Validar AMP con un WordPress con WPML

Hoy os vamos a explicar cómo se puede conseguir validar páginas AMP en un WordPress que use WPML como plugin multi-idioma.

WPML incluye en el header de todas las páginas una hoja de estilo para el selector de idiomas «language-selector.css». Y esto no lo hacen siguiendo las especificaciones de WordPress, sino filtrando el header por la etiqueta <title>*</title> y añadiendo la hoja de estilos a continuación.

Una implementación que NO sigue el estándar de WordPress y que NO debería hacerse de esta forma. Por esta razón no se puede utilizar el filtrado que proponíamos en otra entrada: ¿Qué pasa si mi WordPress no pasa la validación AMP? y hay que buscar otra solución.

El error de validación de AMP exacto es este:

The attribute 'href' in tag 'link rel=stylesheet for fonts' is set to the invalid value 'wp-content/plugins/sitepress-multilingual-cms/res/css/language-selector.css?v=3.5.1.1'

Error AMP en WPML

WPML tiene una función que desactiva la inclusión de esta hoja de estilos. Si añadimos:

define('ICL_DONT_LOAD_LANGUAGE_SELECTOR_CSS', true);

Al archivo functions.php del tema activo no cargará esa hoja de estilos.

¿Cómo conseguir que no cargue la hoja de estilos solo en páginas AMP?

Creando una plantilla AMP personalizada y añadiendo en su header esta línea:

<?php define('ICL_DONT_LOAD_LANGUAGE_SELECTOR_CSS', true); ?>

De esta forma WPML no cargará la hoja de estilos para las páginas AMP y solucionado el problema y pasada la validación:

Validación AMP con WPML correcta

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Los comentarios de esta página se procesan por un sistema automático de moderación por lo cual no siempre se publican de forma instantánea. Por favor respeta a los demás y ciñete al tema del post. Nos reservamos el derecho de eliminar cualquier comentario o enlace que nos parezca inadecuado o tenga una expresión de grosería, insulto, odio, hostilidad o negatividad.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.