El escenario en el que nuestro público objetivo se encuentra en un único país y tenemos el sitio web con la ip y el dominio de dicho país es lo ideal para el SEO Internacional, pero no lo común, por los siguientes motivos:
- No puedes y/o quieres cambiar la ubicación del hosting o el tipo de dominio porque, por ejemplo, ya lo tienes contratado.
- Tu estrategia de mercado o público objetivo no se encuentra en un único país o lenguaje, sino en varios.
Por lo tanto, si lo que queremos es optimizar el SEO Internacional deberemos seguir los siguiente pasos para crear sitio web multiidioma:
- Definir una estrategia multiidioma para organizar y estructurar las url y las páginas en distintos idiomas.
- Conocer qué son los códigos de idioma y de región para utilizarlos posteriormente en las etiquetas html.
- Utilizar la etiqueta html lang en cada página para indicar a los buscadores en qué idioma está la página.
- Utilizar la etiqueta link hreflang para indicar dónde y en qué idioma se encuentran las páginas traducidas.
- Agregar la información del idioma al sitemap para indicarle a los buscadores las distintas opciones, en cuanto a lenguaje, de nuestro contenido indexado.
- De manera opcional, revisar toda la información de lenguaje e idioma en el gestor de contenido o CMS utilizado, si es que tenemos.
Qué estrategia multiidioma utilizar en SEO
Para organizar y crear sitio web multiidioma disponemos de tres alternativas:
- Dominios de nivel superior geográfico o country code top-level domain (ccTLD).
- Subdominios.
- Subdirectorios.
Dominios de nivel superior geográfico o ccTLD
También conocidos como country code top-level domain estos son dominios específicos de cada país, por ejemplo, .es (España), .fr (Francia) o .pt (Portugal).
Esta estrategia consiste en tener tantos dominios específicos de cada país (ccTLD) como idiomas a los que nos vamos a dirigir.
Por ejemplo, si nuestro mercado está dirigido a España, Francia y Portugal, necesitaremos tres dominios: miweb.es, miweb.fr y miweb.pt.
Es la estrategia recomendada por Google, sin embargo, como os podéis imaginar, es la estrategia más costosa tanto en tiempo como en dinero pues requiere comprar, renovar y mantener varios dominios de una misma web.
Subdominios en SEO
Los subdominios permiten dividir un dominio principal en varias partes conocidas como subdominios. Ello nos permite organizar y dividir una web por temas o, en nuestro caso, por idiomas.
Consiste en añadir un pequeño texto a la url del dominio principal para diferenciar un subdominio de otro. Obviamente los subdominios están relacionados con el dominio padre.
Respecto al idioma, que es lo que nos interesa, la estrategia consiste en tener tantos subdominios como idiomas a los que nos vamos a dirigir.
El ejemplo más claro lo tenemos en Wikipedia:
- https://fr.wikipedia.org/, Wikipedia en Francés
- https://pt.wikipedia.org/, Wikipedia en Portugés
- https://en.wikipedia.org/, Wikipedia en Español
Al igual que la anterior estrategia, esta también tiene un inconveniente, algunos hosting limitan el número de subdominios que podemos tener o incrementan el precio según el número de subdominios que tengamos.
Subdirectorios o carpetas para SEO
Es muy parecido al anterior pero, en vez de dividir un dominio en varios subdominios, tendremos un único dominio dividido en varios subdirectorios.
Por lo tanto, para tener distintos idiomas utilizando esta estrategia, tendremos que crear tantos subdirectorios como idiomas queramos utilizar.
Por ejemplo, si queremos tener una web en español e inglés la estructura sería miWeb.com/es y miWeb.com/en.
Tened en cuenta que, tanto para los subdominios como para los subdirectorios, el texto utilizado para diferenciar un idioma de otro no tiene por qué ser el código del idioma ni el código de región, podemos utilizar el que queramos. No obstante, es recomendable, por simplicidad y experiencia de usuario, utilizar los códigos estándar.
Así mismo también se pueden combinar varios de ellos. Por ejemplo, podemos utilizar los subdominios para el lenguaje y los subdirectorios para los temas. Un ejemplo de ello sería:
- en.miWeb/blog/SEO/postX: Página en inglés para la temática de SEO
- es.miWeb/blog/SEO/postX: Página en español para la temática de SEO
- es.miWeb/blog/JavaScript/postY: Página en inglés para la temática de JavaScript.
Códigos de idioma y de región
Antes de conocer cómo crear sitio web multiidioma es necesario que conozcas qué son los códigos de idioma y de región.
Básicamente son un texto en formato XX-YY donde:
- XX indica el idioma en formato ISO 639‑1.
- YY indica la región en formato ISO 3166‑1 Alpha 2.
La región no es obligatoria, el idioma sí. Además, no es necesario que el idioma tenga relación con la región.
Por ejemplo, el código “es” significa contenido en castellano o español, independientemente de la región, el código “es-AD” significa contenido en castellano dirigido a los usuarios de Andorra, el código “en” significa contenido en inglés independientemente de la región y “en-ES” significa contenido en inglés dirigido a los usuarios de España.
Etiqueta html lang
La etiqueta html lang permite a los buscadores conocer el idioma y la región de una determinada página de nuestra web.
En realidad se trata de un atributo del elemento <html> y se establece de la siguiente manera:
<html lang=”codigoIdioma-codigoRegion”>Debemos tener en cuenta que Google es capaz de conocer el idioma en el que se encuentra la página web sin necesidad de esta etiqueta. Esto significa que no es una etiqueta obligatoria aunque sí recomendable para lenguajes minoritarios puesto que Google puede fallar al intentar adivinar el lenguaje en ausencia de esta etiqueta.
Etiqueta link hreflang
Otro paso necesario para crear sitio web multiidioma es utilizar la etiqueta link hreflang la cual permite a los buscadores y arañas web conocer en qué lenguaje y dónde se encuentran traducciones de una página concreta, incluida la actual.
Dichas etiquetas se encuentran dentro de la cabecera html y siguen el siguiente formato:
<html lang=”codigoIdioma-codigoRegion”>
<head>
<link rel="alternate" hreflang="codigoIdioma-codigoRegion" href="UrlActual" />
<link rel="alternate" hreflang="codigoIdioma2-codigoRegion2" href="UrlPáginaTraducida2" />
<link rel="alternate" hreflang="codigoIdioma3-codigoRegion3" href="UrlPáginaTraducida3" />
… etc
</head>
</html>Por ejemplo, si hemos elegido la estrategia de utilizar subdirectorios y nos encontramos dentro de la página en español localizada en miWeb.com/es/miPagina.html, los link hreflang que debemos de utilizar para el portugués y el francés serán los siguientes:
<html lang=”es”>
<head>
<link rel="alternate" hreflang="es" href="http://miWeb.com/es/miPagina.html" />
<link rel="alternate" hreflang="fr" href="http://miWeb.com/fr/miPagina.html" />
<link rel="alternate" hreflang="pt" href="http://miWeb.com/pt/miPagina.html" />
… etc
</head>
</html>Como podéis ver es necesario incluir el link href lang del lenguaje actual, no solo de los lenguajes traducidos.
Un caso especial es hreflang por defecto, el cual utiliza el formato hreflang=»x-default«. Esta línea nos permitirá definir la página por defecto que se mostrará a los usuarios cuyo lenguaje o región no se haya definido.
Por lo tanto, siguiendo nuestro ejemplo, podemos establecer el siguiente valor para que cuando venga un usuario con un lenguaje que no sea el español, francés o portugués, se le muestre por defecto la página en español:
<link rel="alternate" hreflang="x-default" href="http://miWeb.com/es/miPagina.html" />Finalmente debéis tener en cuenta que, tanto la etiqueta lang como las etiquetas link href lang deben de estar presentes en todas las páginas con los valores adecuados, no solo en la principal.
Idioma en el sitemap para SEO
En una web es imprescindible generar el sitemap y enviarlo a los buscadores, ya sea de manera manual o automática.
Cabe destacar que, si has utilizado las etiquetas html lang y link hreflang como hemos indicado anteriormente, no es necesario tener un sitemap multiidioma tal y como indica Google, aunque sí es obligatorio que tu sitemap envíe todas las páginas sea cual sea su idioma.
Por lo tanto, para crear sitio web multiidioma si no hemos utilizado las etiquetas anteriores, necesitaremos indicar el idioma en el sitemap de manera muy similar a como lo hicimos con las páginas HTML:
- Todo el contenido va dentro de urlset.
- Tendremos tantos elementos <url> como páginas únicas tengamos, sin contar traducciones.
- Dentro de cada elemento <url> tendremos un único elemento <loc> donde indicaremos la url de una página concreta, da igual cual sea el lenguaje de ésta.
- Dentro de cada elemento <url> tendremos tantos elementos xhtml:link como traducciones de esa página tengamos, incluyendo la que hemos puesto en <loc> y, de manera opcional, incluyendo un valor por defecto x-default. El orden de estos elementos no es importante.
Un ejemplo de sitemap con idiomas es el siguiente:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>http://miWeb.com/es/miPagina1.html</loc>
<xhtml:link
rel="alternate"
hreflang="es"
href="http://miWeb.com/es/miPagina1.html"/>
<xhtml:link
rel="alternate"
hreflang="fr"
href="http://miWeb.com/fr/miPagina1.html" />
<xhtml:link
rel="alternate"
hreflang="pt"
href="http://miWeb.com/pt/miPagina1.html" />
<xhtml:link
rel="alternate"
hreflang="x-default"
href="http://miWeb.com/es/miPagina1.html" />
</url>
<url>
<loc>http://miWeb.com/es/miPagina2.html</loc>
<xhtml:link
rel="alternate"
hreflang="es"
href="http://miWeb.com/es/miPagina2.html"/>
<xhtml:link
rel="alternate"
hreflang="fr"
href="http://miWeb.com/fr/miPagina2.html" />
<xhtml:link
rel="alternate"
hreflang="pt"
href="http://miWeb.com/pt/miPagina2.html" />
<xhtml:link
rel="alternate"
hreflang="x-default"
href="http://miWeb.com/es/miPagina2.html" />
</url>
</urlset>
Como podéis observar, aquí también podemos especificar la etiqueta x-default para indicar la página por defecto que se mostrará a los usuarios que no concuerden con los lenguajes/regiones definidos.
Gestores de contenido CMS e idiomas
Uno de los factores para elegir un gestor de contenido o CMS tiene que ver con la capacidad que tiene éste de tratar los temas relacionados con el SEO Internacional.
En resumen, será necesario investigar si nuestro gestor de contenidos es capaz de gestionar de manera sencilla y/o gratuita los siguientes puntos:
- Etiqueta html lang.
- Etiqueta link hreflang.
- Idiomas en el sitemap.
Un ejemplo de plugin de WordPress para crear sitio web multiidioma es Polylang, el cual permite no solo traducir el contenido, sino también las categorías, etiquetas, rutas, especificar las traducciones alternativas de los artículos… etc.




