Distinguiendo páginas originales con rel canonical

En ocasiones terminamos con el mismo contenido en dos o más páginas por una cosa o por otra y, es algo que hemos de evitar para no enfadar mucho a Google. Al buscador le interesa mostrar a sus usuarios distintas alternativas distintas cuando hacen una busqueda, pero odian (con razón) enseñar en sus listas de resultados dos o más páginas con el mismo contenido. No tendría sentido que buscaras una segunda opinión y encontraras exactamente la misma información, verdad?

Normalmente generamos contenido duplicado cuando tenemos una web y pasamos a crear una nueva dejando la vieja con el mismo contenido. Pero en otras ocasiones duplicamos contenido con páginas de etiquetas o categorías como en Wordpress, en la que fragmentos de varios artículos aparecen como resumenes en la portada de cada categóría. Eso también es contenido duplicado, claro. También ocurre al tener listas de artículos por orden alfabético y por orden aleatorio y por orden inverso y... todas ellas al final tienen el mismo contenido, contenido duplicado una vez más.

La mejor forma de evitar esto es no generar contenido duplicado o borrar el que accidentalmente o no, vayamos creando, pero aún nos queda una tercera opción y es, indicar cuál de entre todas las páginas con el mismo contenido es la auténtica, la que queremos que sea reflejada en Google y cuales son copias y queremos que sean dejadas de lado por el buscador.

Marcando versión preferida con rel="canonical"

Pero a lo que ibamos! El método para marcar una página como la original o la que queremos que sea tenida en cuenta por los buscadores (olvidando las demás) es añadiendo en la cabecera o head la línea de código Html siguiente:

  <link rel="canonical" href="http://www.mi-pagina-web.com/estaeslaoriginal.html"/>

donde la url de dentro del href puede ser absoluta o relativa, aunque siempre se recomienda que sea absoluta para evitar confusiones.

La URL que indicaremos en esta línea ha de ser la de la página que queremos sea fichada como la original. Por tanto, esa línea hemos de colocarla en las páginas que son copias de la original. Leelo otra vez... Esa línea no hace falta ponerla en la página original, sino que es necesario colocarla solo en las copias.

Enviando encabezados HTTP apropiados

Lo malo del método anterior, colocar una línea de código en la cabecera de las "páginas copia", es que solo se puede usar para archivos que sean páginas web o .html, pero no es un método válido para archivos como los .pdf en los que no se puede añadir código Html.

Para ese tipo de casos Google acepta que se envíe esa información a través de encabezados HTTP, por ejemplo, enviando el encabezado Link rel="canonical" siguiente:

Link: <http://www.example.com/descargas/libro-blanco.pdf>; rel="canonical"

Rel="Canonical" es solo para señalar duplicados

La recomendación que nos hace Google es la de aplicar esta etiqueta sobre las páginas de contenido duplicado, idéntico o casi idéntico. Si lo que queremos es quitarle importancia a alguna página concreta, con contenido distinto, no debemos usar esta opción. Repetimos, es solo para indicar que la página contiene información duplicada y que ha de tomar como "buena" la que se indica dentro de esa línea de ´codigo comentada.

Rel Canonical, una alternativa cuando no se puede usar el .htaccess

Aunque Google toma esta línea como algo informativo (el resultado no es matemático) resulta una muy buena opción alternativa cuando cambiamos de dominio por ejemplo y no podemos acceder al .htaccess del viejo servidor. De este modo podemos avisar a Google de que las viejas urls son copias y que las buenas están en el nuevo dominio. Como digo, no es algo matermático, pero ayuda bastante a Google a pasar la popularidad que tenía el viejo dominio, al nuevo.