Prefetching y SEO: implementación de un estándar de doble filo

Todo comienza con un elemento que conoces de tus años rascando HTML, piensas que te ayudará a indexar páginas y así resulta, pero justo cuando ya estas mirando GA y paladeando las mieles del triunfo con el aumento de visitas, tu ánimo se va enfriando al ver un descenso del porcentaje de conversión y te quedas pálido/a al comprobar que tu línea de rendimiento (léase PageSpeed) ha bajado un poco…

Prefetching y SEO

Prefetching y SEO : QR Code del post sobre <link rel=”next”> y posicionamiento web

Pero entonces, ¿acaso no es bueno usar link rel=”next” en la cabecera para señalar una URL de nuestro interés a los crawlers?

Vamos por partes
¿Qué es link rel=”next”?

LINK es un elemento definido desde los inicios del estándar HTML1, se encuentra necesariamente en la cabecera del documento HTML.

Se usa para indicar la relación entre el documento HTML en el que se encuentra y cualquier otro objeto, pudiendo haber N elementos LINK.

Se trata de un elemento vacío que toma los mismos atributos que el elemento ancla (anchor), de lo que se infieren los posibles atributos rel, href y title.

Los usos típicos para este elemento se pueden agrupar en dos bloques:
1 – Para precargar un link a una página que presuponemos será la próxima en ser visitada o que se presuponga de un interés especial para el/la visitante (sobre este razonamiento han trabajado Google y Mozilla)
1bis – Hablando de precargar, no confundir con la versión de Google, el prerender no equivale al prefetching y puede ser incluso más nocivo si se emplea mal.
2 – Para indicar autoría de un documento, índices y glosarios relacionados con el documento que se consulta, versionado de dicho documento, o puede indicar una estructura y orden estáticos mediante los valores parent, next y previous.

Ejemplo de estructura y orden:

 ENCICLOPEDIA SEO – Sección de la LETRA B

para el caso, next es la clave indicando que tras la página de “B” viene la de “C” y que su previous es la de “A”.
Este es un caso obvio porque utiliza link rel=”next” para lo que fue creado, el entorno lento y entrañablemente torpe de los inicios de la WWW (HTML conviviendo con Gopher, FTP, Usenet…), un entorno estructurado por documentalistas y académicos para documentalistas y académicos. Así se indicaba un orden secuencial para los múltiples documentos (en verdad páginas web) que componían un “libro” o un “artículo”, esto es, las N páginas que leídas en secuencia correcta te ilustraban sobre un tema X.

Ejemplo actual aplicado al descubrimiento e indexacióny de páginas:

ENCICLOPEDIA SEO – Anexo 1

aquí tenemos “Anexo 1″, una página o grupo de páginas o microsite, por el motivo X esta página/-s no tiene enlace desde otras páginas, pese a todo se requiere que “Anexo 1″ sea descubierto e indexado, según estas líneas tocaría poner la URL de la página índice (o una landing concreta, eso es cosa tuya) en el valor href de link.

No estoy diciendo que esto sea útil no importa como sea de mala la página a la que se llega por esta vía, se presupone un mínimo de calidad. El caso es que es un truco de fácil implementación que requiere pocos permisos según donde tengas el servidor web, si tienes tu propio CMS pues añades el campo y listos, ya puedes manipular a tu antojo link rel=”next” a nivel de página.

Observando las peticiones/respuestas del servidor web puedes observar como al cargar una página que contiene la línea
<link rel=”next” href=”http://dominio/anexo1.html”&gt;
se obtiene esta petición extra:

#request# GET http://dominio/anexo1.html

A continuación verás la respuesta del servidor de WordPress donde se aloja este blog SEO, resalto el punto de interés:

GET / HTTP/1.1
Host: promocioweb.wordpress.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-gb,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://www.seofreelance.es/
X-Moz: prefetch
Cookie: __qca= [VALUE]

HTTP/1.1 200 OK
Server: nginx
Date: Thu, 26 May 2011 12:28:34 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: close
Vary: Accept-Encoding
X-hacker: If you’re reading this, you should visit automattic.com/jobs and apply to join the fun, mention this header.
X-Pingback: http://promocioweb.wordpress.com/xmlrpc.php
Link: ; rel=shortlink
Content-Encoding: gzip

Si te interesa filtrar estas peticiones extra, debes buscar la línea que destaco en amarillo, es el estandar para informar sobre la petición de prefetching.

Por último, este truco puede ser molesto si permanece largo tiempo implementado, según tu caso sabrás si lo dejas, lo quitas… O si vas cambiando su valor… ¿Es que no había dicho antes que permite valores crossdomain? :)

¿Molesto? Bueno, si te defines como Analista Web probablemente deberíamos decir tóxico ya que duplica los hits atribuyendo uno a la URL destino de la acción previa (clic, filtro, etc) y uno a la URL del atributo href de <link>.
Por supuesto los hits que provoca el prefetching no son visitas válidas y a largo plazo con un buen número de links precargados en tu código verás como decrece tu CTR, como sugería al principio del artículo. Sobre todo si recibes muchas visitas usando el navegador Firefox, uno de los principales usando prefetching.

NO, no creo que sea recomendable usarlo desde cientos de páginas mediocres para bombardear el servidor web de tus competidores, en plan DOS cutre.

¿Quién dijo que jamás leería los logs de su servidor? ¿Tú?

Comparte este post http://wp.me/pugBi-5F

Fuentes:

1. http://www.w3.org/MarkUp/draft-ietf-iiir-html-01.txt

(os juro que al soplar sale polvo digital de la pantalla)

2. https://developer.mozilla.org/en/Link_prefetching_FAQ

(link prefetching FAQ de la comunidad de desarrollo de Mozilla)

2. http://www.whatwg.org/specs/web-apps/current-work/#link-type-prefetch

(esto vale para el futuro, HTML 5 prefetching)

About these ads
  1. El día 15 de Septiembre los amigos de Google publicaron un artículo muy ilustrativo sobre la paginación mediante rel-next y rel-previous

  1. 24/07/12

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

%d personas les gusta esto: