hreflang

Solución a los errores en las etiquetas hreflang

|

Si tienes un sitio web con varios idiomas o distintos tld de tu misma marca (ejemplo.fr, ejemplo.co.uk) el hreflang es una de las etiquetas que debes implementar. Google utiliza  los rel=»alternate» hreflang=»x» para mostrar las url del idioma acorde a los resultados de búsqueda.

Por ejemplo:  Tu web está en 3 idiomas (español, inglés y francés).  Cuando un usuario está en Google  y busca algo relacionado con tu web en francés, si está etiquetado con hreflang le ofrecerá la url de la versión francesa y no de la versión española o inglesa.

hreflang error

¿Te ha llegado el email sobre errores en las etiquetas?

Si trabajáis en agencia, o simplemente tenéis algún sitio web multi-idioma dado de alta en Search Console, ayer día 18 de febrero es probable que os llegara un email avisando de errores en las etiquetas hreflang.

error hreflang

error WMT

Errores al implementar la etiqueta hreflang

Google, desde su documentación oficial, nos explican cuáles son los errores más comunes.

Falta de enlaces de confirmación:

Esto se basa en la reciprocidad, si la versión española enlaza con la versión inglesa, ésta debe hacer lo mismo con la española. Si no realizamos correctamente este paso, lo más probable es que el GoogleBot no interprete de manera adecuada las etiquetas alternate.

Códigos de idioma incorrectos

Los códigos de idioma deben identificar el idioma deseado en formato ISO 639-1 y, de manera opcional, la región en formato ISO 3166-1 Alpha 2 para una url alternativa.

El plugin Qtranslate de WordPress duplica las etiquetas

Si utilizáis el plugin de traducción Qtranslate para WordPress es muy probable que os esté duplicando las etiquetas como vemos a continuación lo que provocará errores.

qtranslate wordpress

Esto puede ser un problema ya que le estamos indicando a Google toda la información por duplicado.

Nosotros lo que hemos hecho ha sido modificar la programación del plugin, para así evitar tener duplicadas nuestras etiquetas hreflang.

qtranslate hreflang

¿Cuándo recomienda Google utilizar hreflang?

Google nos indica 3 situaciones en las que debemos utilizar la etiqueta alternate:

Contenido principal en un solo idioma

Si lo principal lo tenemos en un único idioma y solo aparece traducida la plantilla (como footer o menús).

Mismo idioma en distintos países

Esto ocurre cuando el idioma es el mismo (inglés) pero son países o regiones distintas (Reino Unido y Estados Unidos).

Tu sitio está traducido

Si tenemos creadas versiones de los distintos idiomas, deberemos indicarle a Google mediante estas etiquetas cada una de ellas.

 ¿Dónde implementar la etiqueta hreflang?

Google nos da la posibilidad de configurar de 3 maneras diferentes las etiquetas alternate. El objetivo es conseguir que, si estamos en una url en concreto de la versión española, le indiquemos al bot cuál es su url equivalente en el resto de idiomas.

Enlace HTML en el encabezado

Es la forma más habitual de implementarlo. Dentro del <head> de nuestra página indicaremos las url con la versión del idioma que le corresponde.

<link rel=”alternate” hreflang=”de” href=”https://ejemplo.com/de” />

Aquí podemos ver un ejemplo etiquetas hreflang correctamente implementadas.

spain

Encabezado HTTP

Si en tu caso no publicas archivos HTML, por ejemplo las imágenes o los PDF, Google te da la opción de utilizar un encabezado HTTP para especificar las distintas versiones de idiomas que existen.

Link: <https://ejemplo.com/de/>; rel=”alternate” hreflang=”de”

Mediante Sitemap

Si no quieres implementar etiquetas, puedes indicarle a Google todas las versiones de idiomas que existen a través de un sitemap.

¿Cómo implementar las hreflang?

Si trabajáis con WordPress, podéis utilizar plugins (como por ejemplo Add meta-tags).

A continuación os vamos a poner un ejemplo de cómo implementarlas de manera correcta.

Pongámonos en el caso de que nuestra página está en 3 idiomas (español, inglés y alemán). Para cada uno de los idiomas existe un subdominio (ejemplo.com; en.ejemplo.com; de.ejemplo.com).

Lo que deberíamos implementar en el <head> es lo siguiente:

<link rel=”alternate” hreflang=”es” href=”https://ejemplo.com” />

<link rel=”alternate” hreflang=”en” href=”https://en.ejemplo.com” />

<link rel=”alternate” hreflang=”de” href=”https://de.ejemplo.com” />

Para los selectores de idioma/país que redireccionan de forma automática, también debes añadir una anotación para el valor hreflang «x-default»:

<link rel=»alternate» href=»https://ejemplo.com/» hreflang=»x-default» />

 ¿Y si tenemos el mismo idioma y distintos países?

Se puede dar el caso de que tengamos diferentes versiones que usen el mismo idioma (por ejemplo podemos utilizar el idioma castellano para España y cualquier país sudamericano). El idioma es el mismo pero las expresiones y la redacción son distintas.

Como vemos, podemos especificar por idioma e idioma-zona geográfica. Esto nos permite, por ejemplo, diferenciar inglés de España y Argentina.

<link rel=»alternate» href=»https:// ejemplo.com/» hreflang=»es-ES»/>

<link rel=»alternate» href=»https://ar.ejemplo.com/» hreflang=»es-AR»/>

Esperamos que os sirva de ayuda este post, si queréis consultarnos algo acerca de nuestros servicios de posicionamiento web, solo tienes que escribirnos y nos pondremos en contacto contigo.

Comparte este artículo:

Comentarios (5)

Víctor Berroya

Víctor Berroya

Buenos días,

En Search Console no puedes eliminar avisos de error de etiquetas hreflang. Si están bien implementadas dale tiempo para ver si desaparece ese error que os indica Search Console.

Saludos

Pecatum Gourmet

Pecatum Gourmet

Buenos días,

En nuestro caso, tras meses con el blog activo en 2 idiomas (y sin ningún error relacionado con estas etiquetas reportado hasta ahora), Search Console nos acaba de informar de errores en sólo 2 de las entradas:

http://www.pecatum.com/blog/en/2016/04/20/happy-mothers-day-theres-only-one-mother-all-year/
es: no hay etiquetas de retorno
URL alternativa: http://www.pecatum.com/blog/es/2016/04/20/feliz-dia-de-la-madre-madre-solo-hay-una-todo-el-ano/

Y uno análogo (en: no hay etiquetas de retorno) para otra de las entradas.

Sin embargo, en el código fuente sí están las etiquetas:

Es verdad que hace un par de meses modificamos la estructura de los enlaces para eliminar la fecha, ¿puede ser ése el problema? Es decir, Google busca el enlace a xxxx/2016/10/07/yyyyy y ahora ese enlace (que de todas formas está correctamente redirigido) es en realidad xxxx/yyyy.

La pregunta es: ¿puede eliminarse este aviso de error? ¿O simplemente esperar a que Google reindexe?

Muchas gracias y un saludo

Víctor Berroya

Víctor Berroya

Hola Eduardo,

Gracias por comentar en el blog. Para que la etiqueta hreflang funcione debe ser bidireccional por lo que debemos asociar siempre una url con su homónima en otro idioma.

Saludos

josefino

josefino

Me uno a la pregunta de Eduardo. Saludos

Eduardo Alapont Fernández

Eduardo Alapont Fernández

Hola
¿hay que poner el hreflang en todas las páginas o solo en la index?
Tengo un site en diferentes idiomas por carpetas /por /esp.. y el contenido no es el mismo con lo que una url no correponde con otra. Muchas gracias

Envíanos tu comentario: