En mi anterior artículo vimos qué era el fichero robots.txt, cómo crearlo y utilizarlo. Ahora vamos a ver cómo optimizarlo para WordPress, uno de los gestores de contenido más utilizados a nivel mundial y con el que están hechos miles de blogs y webs.
Ante
la pregunta de si es necesario utilizar el robots.txt con WordPress y
cómo se configura, si buscas en internet encontrarás muchas respuestas y
configuraciones distintas. Lo cierto es que resulta hasta complicado
decidir lo que hacer, y más cuando muchos autores no suelen explicar por
qué utilizan determinadas cosas.
Después de leer, analizar y revisar un buen número páginas y configuraciones, estas son las conclusiones a las que he llegado.
¿Es necesario utilizar el fichero robots.txt con WordPress?
La respuesta es interesante: Si que hace falta utilizarlo, para evitar que los buscadores indexen y muestren cosas como carpetas de administración, plugins, etc., pero no hace falta crearlo salvo para añadir configuraciones personalizadas.
Entonces, ¿cómo puede ser eso?
En las versiones modernas de WordPress, existe una función PHP llamada “do_robots” que se encarga de generar automáticamente el fichero robots.txt cuando un motor de búsqueda consulta tu sitio. De esta forma, aunque tu no veas o tengas el robots.txt en tu carpeta raíz, cuando Google o cualquier otro buscador analice tu sitio si que va a encontrarlo, ya que se genera dinámicamente.
En las versiones modernas de WordPress, existe una función PHP llamada “do_robots” que se encarga de generar automáticamente el fichero robots.txt cuando un motor de búsqueda consulta tu sitio. De esta forma, aunque tu no veas o tengas el robots.txt en tu carpeta raíz, cuando Google o cualquier otro buscador analice tu sitio si que va a encontrarlo, ya que se genera dinámicamente.
El único detalle para que esta función funcione (valga la redundancia) es que tengas configurados los Permalinks,
o sea, que no tengas activada la configuración por defecto que viene al
instalar WordPress. Dicha configuración se modifica en el menú Ajustes -> Enlaces permanentes.
Haz una prueba: Introduce en el navegador la URL de cualquier web creada con WordPress con robots.txt al final. ¿Te funciona?
Ej: http://www.tusitiowebwordpress.com/robots.txt
Por defecto, esta función genera las siguientes líneas :
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-admin/
Disallow: /wp-includes/
¿Qué
significa esto? Que los buscadores no indexen nada de lo que haya en la
carpeta de administración ni en las librerías del programa.
Ahora la duda es, ¿tenemos que añadir algo más al robots.txt?, porque en la web de wordpress viene un fichero de ejemplo con bastantes líneas más:
User-agent: * Indicamos que estas reglas son aplicables a todos los buscadores
Disallow: /cgi-bin/ Indicamos que no indexen programas que pudiese haber en cgi-bin
Disallow: /wp-admin/ Indicamos que no indexen la carpeta de administración
Disallow: /wp-includes/ Indicamos que no indexen las librerías que utiliza WordPress
Disallow: /cgi-bin/ Indicamos que no indexen programas que pudiese haber en cgi-bin
Disallow: /wp-admin/ Indicamos que no indexen la carpeta de administración
Disallow: /wp-includes/ Indicamos que no indexen las librerías que utiliza WordPress
Disallow: /wp-content/plugins/ Indicamos que no indexen los plugins, que pueden contener html en ellos
Disallow: /wp-content/cache/ Indicamos que no indexen la caché
Disallow: /wp-content/themes/ Indicamos que no indexen los temas instalados
Disallow: /wp-content/cache/ Indicamos que no indexen la caché
Disallow: /wp-content/themes/ Indicamos que no indexen los temas instalados
Disallow: /trackback/ Indicamos que no indexen los trackback (avisos entre blogs)
Disallow: /feed/ Indicamos que no indexen el feed – listado de artículos
Disallow: /comments/ Indicamos que no indexen los comentarios
Disallow: /category/*/* Indicamos que no indexen las subcategorias (si es que están bajo “category”)
Disallow: */trackback/ Indicamos que no indexen subdirectorios de trackback
Disallow: */feed/ Indicamos que no indexen subdirectorios de feed
Disallow: */comments/ Indicamos que no indexen subdirectorios de comentarios
Disallow: /*? Indicamos que no indexe búsquedas, que incluyen el símbolo ?
Allow: /wp-content/uploads/ Idicamos que indexe todos los ficheros que hemos subido al blog: imágenes, vídeos, etc.
Disallow: /feed/ Indicamos que no indexen el feed – listado de artículos
Disallow: /comments/ Indicamos que no indexen los comentarios
Disallow: /category/*/* Indicamos que no indexen las subcategorias (si es que están bajo “category”)
Disallow: */trackback/ Indicamos que no indexen subdirectorios de trackback
Disallow: */feed/ Indicamos que no indexen subdirectorios de feed
Disallow: */comments/ Indicamos que no indexen subdirectorios de comentarios
Disallow: /*? Indicamos que no indexe búsquedas, que incluyen el símbolo ?
Allow: /wp-content/uploads/ Idicamos que indexe todos los ficheros que hemos subido al blog: imágenes, vídeos, etc.
Aquí
es donde la cosa empieza a complicarse, porque no hay nadie que hable
claro sobre el tema. Personalmente soy de la opinión de Yoast, que el
tercer bloque de líneas no hace falta y la de cgi-bin tampoco, porque en
una instalación estándar no hay nada en esa carpeta. La de cache en mi
instalación no aparece.
Los
trackback, feed, categorías, comentarios y búsquedas, ¿por qué
deshabilitarlos?. Al fin y al cabo no debería pasar nada porque se
indexasen. Hay gente que comenta que hay que quitarlos porque se pueden
ver como contenido duplicado, pero eso parece estar ya solucionado en
WordPress. Por otra parte, que se indexe una búsqueda o un comentario
tampoco está tan mal. Hay veces que Google me ha mostrado como
resultados de búsqueda comentarios de algún post. Si eso ayuda a la
persona que está buscando, pues mejor.
En
cuanto al Allow final de la carpeta uploads tampoco creo que haga
falta. Por defecto los buscadores analizan todo, salvo lo que venga como
Disallow. Por tanto hacer un Allow no tiene demasiado sentido.
Bueno, entonces si por algún motivo quiero bloquear alguna cosa más, ¿cómo lo hago?
Aquí tienes cuatro opciones:
- Indicar a los buscadores que no indexen una determinada página web, con opción a que tampoco sigan los enlaces que contiene. Por ejemplo, añade la siguiente línea a la cabecera de cada una de las páginas que NO quieras que se indexen: <meta content=”noindex,nofollow” name=”robots”>
Esta
línea indica que no se indexe y tampoco se sigan los enlaces internos
(nofollow). Reemplaza robots por el nombre del robot que prefieras si
sólo quieres que afecte a uno.
- “Decirle a los buscadores que no nos indexen” en la opción en Settings del menú de WordPress, la cual añade una etiqueta como la de arriba a todas nuestras páginas.
- Instalar un plugin para modificar el fichero robots.txt desde el panel de administración de WordPress.
- Crear un robots.txt a mano y ponerlo en la carpeta raíz.
Una
vez que hayas creado tu nuevo robots.txt, el fichero que tendrá validez
será el tuyo, o sea, que prevalece sobre el que genera WordPress por
defecto.
¿Qué más nos hace falta saber?
Aquí van algunos puntos interesantes:
- Se recomienda no incluir en un fichero robots.txt más de 200 líneas de Disallow.
- Cuando deshabilites algo, CUIDADO. Una vez que hagas el Disallow de una carpeta, si te has equivocado y quieres volver a indexarla pueden pasar hasta 3 meses desde que tu la agregues hasta que los buscadores vuelvan a mostrarla.
- Utiliza los Disallow cuando quieras bloquear carpetas completas. Si es sólo una página suelta, utiliza las etiquetas meta para más comodidad.
- Si quieres modificar la función do_robots, puedes ver su código aqui.
También puedes añadir un hook para el filtro robots_txt:
add_filter( ‘robots_txt’, ‘wpse8170_my_robots_txt’, 10, 2 );
function wpse8170_my_robots_txt( $output, $public ) {
if ( ’0′ != $public ) {
$output .= ‘
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
‘;
}
return $output;
}
function wpse8170_my_robots_txt( $output, $public ) {
if ( ’0′ != $public ) {
$output .= ‘
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
‘;
}
return $output;
}
- Para ver qué ha indexado Google de nuestra web y compararlo con lo que le hemos dicho que no indexe en meta o robots.txt, introduce en la búsqueda “site:www.tusitioweb.com“. Ahí puedes ver si está funcionando todo correctamente.
- Si incluyes una carpeta en el robots.txt y también en el sitemap.xml, Google la mostrará, aunque no mostrará la descripción debajo del enlace. Lo he probado con un mapa html de mi web que coloqué hace poco y mira lo que aparece:
No hay comentarios:
Publicar un comentario
Deja acá tus comentarios....