Cookies policy: We use our own and third-party cookies to improve your navigation experience. By browsing this site, we assume you consent to us using them. More information here.
Accept

Robots.txt para Wordpress

¿Ya tienes tu robots optimizado? Descubre que es y para que funciona el archivo robots.txt y mejora tu Wordpress
9.66667
0
2
249 visits

Robots.txt para WordPress

El archivo Robots.txt es un arma que todo WordPress necesita, y ya no sólo a nivel de cms, todo webmaster tiene que tener uno en su web, yo mismo tengo uno en mi blog de seo optimizado para evitar duplicados y mejorar así las visitas. Es una práctica recomendada por Google.  Con el archivo robots.txt damos información a las “arañas” de los buscadores cuando estos quieren rastrear nuestro sitio para indexarlo.  Pero antes de dar un ejemplo de archivo robots para WordPress vamos a hablar y aprender un poco sobre el.

¿Cómo nos ayuda el Robots.txt en WordPress?

WordPress es un excelente gestor, pero por desgracia si no lo configuras bien puedes crear mucho contenido duplicado. Al publicar un post este se publica en la home, en las categorias, en la url del post, en la página de author, en los archivos… en fin, cantidad de contenido duplicado por todos sitios. Un cebo importante paraPanda, la actualización de Google que le encanta sancionar páginas con contenido duplicado. Mediante el Robots.txt podemos evitar indexar esas páginas e indexar sólo las que nos interese. Consiguiendo así una mejor indexación del buscador y evitando penalizaciones.


Configurar robots.txt para WordPress

A pesar de que WordPress es una plataforma muy extendida y Google cada vez entiende mejor qué tiene que indexar y qué no, en la práctica siempre se cuelan cosas que “empañan” la calidad de la información indexada de nuestro sitio. Dado que la estructura de WordPress es común a todas las instalaciones, puede definirse un robots tipo para WordPress con las carpetas donde el buscador no debería meter las narices. Téngase en cuenta que esto son unos mínimos, a nada que tiremos de plantillas, plugins y personalizaciones, habrá otras nuevas carpetas que tendremos que “capar”:

User-agent: *

Disallow: /wp-login

Disallow: /wp-admin

Disallow: //wp-includes/

Disallow: /*/feed/

Disallow: /*/trackback/

Disallow: /*/attachment/

Disallow: /author/

Disallow: /*/page/

Disallow: /*/feed/

Disallow: /tag/*/page/

Disallow: /tag/*/feed/

Disallow: /page/

Disallow: /comments/

Disallow: /xmlrpc.php

Disallow: /*?s=

Disallow: /*/*/*/feed.xml

Disallow: /?attachment_id*

Así se excluye la posible indexación de carpetas de sistema y archivos con extensiones que no interesa indexar. Manéjese con cuidado.

Funcionamiento y comandos

Para escribir el robots.txt de nuestro blog tenemos que tener en cuenta las funciones que podemos incluir. Generalmente el robots se usa para excluir el acceso de algunos bots a directorios o documentos.

Para ello utilizamos el comando Disallow.  También aunque menos frecuente podemos usar el comando Allow, para indicar el acceso. Esta norma es ignorada ya que por defecto, los rastreadores indexarán nuestro sitio web.

El funcionamiento es sencillo primero utilizamos la regla User-agent: para indicar el nombre del bot al que queremos aplicar la norma . A continuación en la línea siguiente el comando con el directorio o archivo en el que se va a aplicar la norma. Recuerda siempre dejar un espacio siempre después de la declaración.

¿Cómo evitar la indexación de URLs con parámetros?

A menudo nuestro CMS nos genera rutas con parámetros como “midominio.com/index.php?user=1” que deseamos no sean indexadas al poder incurrir en duplicidad de contenidos. Siguiendo el patrón anterior y sabiendo que los parámetros vienen precedidos de una interrogación, habría que aplicar algo como esto:

User-agent: * Disallow: /*?

Así le decimos que no indexe todo lo que empiece por “lo que sea” pero que luego tenga una interrogación, seguido de lo que sea. Seguro que alguno se ha perdido en este último paso, que tendría la tentación de haber puesto “Disallow: /*?*” para asegurarse de que después de la interrogación va algo más, los parámetros. Pues no, resulta que este tipo de expresiones regulares suponen por defecto que, tras lo que le decimos, puede ir cualquier cosa. Por eso cuando decimos “Disallow: /servicios/” el robot entiende que todo lo que vaya por detrás (ej: /servicios/auditoria) tampoco lo indexará, porque responde al patrón definido.

¿Qué pasa cuando la URL de la página no tiene extensión (ej: no acaba en “.html”)?

Pongamos que existe una página que no queremos indexar cuya URL es exactamente ésta: “www.midominio.com/servicio”. Podríamos caer en el que posiblemente sea el mayor error cometido con el uso del archivo robots.txt a nivel mundial! :O


User-agent: * Disallow: /servicio

Algún listo dirá: Así no, eso sirve para capar la carpeta “servicio” entera.
Pues tampoco exactamente. En realidad, como ya hemos explicado antes, el robot va a entender que detrás de eso puede ir cualquier cosa, es decir, va a excluir páginas como:

  • /servicio
  • /servicios
  • /servicio-auditoria
  • /servicio-consultoria/
  • /servicio-consutoria/digital.html
  • /serviciosweb/seo/yandex.php
  • etc.

Entonces, ¿cómo excluyo esa página que no tiene extensión? Así:

User-agent: * Disallow: /servicio$

De esta forma delimitamos dónde termina la URL, evitando este super-problema que generalmente se pasa por alto al formular los archivos robots.

Googlebot

¿Hay que poner una barra “/” después del nombre de la carpeta? ¿Qué pasa si no la pongo?

Esto ha quedado explicado con el punto anterior: si no se pone barra, el robots estará excluyendo todo lo que empiece de esa manera, corresponda concretamente o no a dicho subdirectorio.

¿Pueden incluirse comandos Disallow y Allow en el mismo robots?

Así es. De hecho su combinación puede ser una forma de definir mejor qué cosas se deben indexar y cuáles no para una determinada carpeta (o para todo el sitio). Un ejemplo…


User-agent: * Allow: /servicios/$ Disallow: /servicios/

De esta forma le estaríamos diciendo que SÍ indexe la página general de servicios (“midominio.com/servicios/”) pero NO indexe las páginas sucesivas con los servicios concretos (“midominio.com/servicios/auditoria”+”midominio.com/servicios/consultoria”+etc.).
Lo ideal es usar primero el “Allow” que no es restrictivo (por defecto se entiende como permitido indexar todo), para posteriormente incluir el “Disallow”. De esta forma se facilita el trabajo a los robots más “torpes”.

Crear el archivo Robots.txt

La creación de el archivo es muy sencilla, sólo tenemos que abrir el bloc de notas y escribir el contenido dentroGuardar y nombrarlo como robots.txt. Bastará con subirlo al directorio raiz de nuestro ftp (donde tenemos la página index) y ya estará funcionando.

Recuerda que existe más de un robot, mas bien cientos, y muchos no son buenos, más bien maliciosos. Tanto la gente que copia webs enteras como gente que puede hacer relentizar mucho nuestro blog. Te sorprenderías de la cantidad que hay y el uso que le pueden llegar a dar. Alguno de los bots (robots) más famosos son:

 

¡Roger! ¡Roger! ¡Huuuug!

 

  • Googlebot: La araña de Google.
  • Googlebot-Image: El robot indexador de imágenes de Google.
  • Bingbot: El robor del buscador Bing.
  • YandexBot: Del buscador ruso Yandex.
  • Roger: El bot de Moz, sin duda el más simpático 
  • BaiduSpider: El crawler del buscador chino Baidu.
  • ia_archiver: El bot de alexa que también utiliza la famosa Wayback Machine.

El archivo robots: configuraciones avanzadas

Hasta aquí parece sencillo pero con el trastear continuo en el tiempo te van haciendo falta nuevas configuraciones y comienzan a surgir las dudas, ¿qué se puede hacer con el archivo robots?.

Ahí van algunas dudas que me le han tocado experimentar a enek0, bien en primera persona o a través de preguntas frecuentes con las que se a encontrado de compañeros del marketing online:

¿Qué pasa cuando la URL de la página termina con una barra “/”?

A menudo sucede, especialmente en sitios web montados sobre plataformas como WordPress, que puede haber una página en nuestro sitio con esta estructura en su URL: “midominio.com/servicios/“. En este caso dicha URL es una página donde se muestran los servicios de una empresa, si bien es posible que por debajo de ella existan páginas del tipo “midominio.com/servicios/nombre-servicio1” o similar. Pero ¿cómo le decimos al robots que excluya únicamente la página superior, sin que por ello “cape” todas las que están por debajo? La tentación sería:


User-agent: * Disallow: /servicios/

Pero como ya hemos dicho, en este caso el robot entenderá que la orden afecta a toda esa carpeta o directorio. Pero no es eso lo que queremos! Para decirle a los robots que sólo nos referimos a esa página concreta, tendremos que utilizar el operador dólar (“$”) que sirve para especificar el final de la URL. Así:

User-agent: * Disallow: /servicios/$

De esta forma le decimos al robot que no indexe las URLs que terminen exactamente de esa forma, siendo la única URL de ese tipo la que queremos desindexar precisamente. Y esto nos lleva al uso de expresiones regulares en robots.txt…

Usos de operadores en robots.txt (dólar y asterisco)

Aunque el ejemplo anterior nos sirve para explicar el uso del “$” en el robots, la verdad es que para sacarle el mayor jugo ha de emplearse junto al asterisco “*”. Este último funciona como un comodín, sirve para decir “sustituyo a cualquier cosa que pueda ir en mi lugar”. Mejor verlo con un ejemplo:


User-agent: * Disallow: /*.htm$

Cuidado roger! Qué te bloquean!

Ya hemos explicado que el dólar sirve para decirle que ahí termina la URL, que no puede llevar nada más por detrás aquello que deseemos aplicarle el “allow” o el “disallow”.
En el caso del asterisco le estamos diciendo que puede sustituirlo por lo que quiera, siempre que vaya seguido de “.htm”. Es decir, puede haber varios niveles de carpeta por medio (por ejemplo “/carpeta/subcarpeta/pagina.htm” también sería excluído).

De esta forma en el ejemplo le estamos diciendo a todos los robots que no indexen ningún archivo .HTM si bien les permitimos, a través del dólar, que indexen por ejemplo todos los archivos con extensión .HTML.

¿Pueden incluirse comandos Disallow y Allow en el mismo robots?

Así es. De hecho su combinación puede ser una forma de definir mejor qué cosas se deben indexar y cuáles no para una determinada carpeta (o para todo el sitio). Un ejemplo…


User-agent: * Allow: /servicios/$ Disallow: /servicios/

De esta forma le estaríamos diciendo que SÍ indexe la página general de servicios (“midominio.com/servicios/”) pero NO indexe las páginas sucesivas con los servicios concretos (“midominio.com/servicios/auditoria”+”midominio.com/servicios/consultoria”+etc.).
Lo ideal es usar primero el “Allow” que no es restrictivo (por defecto se entiende como permitido indexar todo), para posteriormente incluir el “Disallow”. De esta forma se facilita el trabajo a los robots más “torpes”.

¿Cómo se tratan las mayúsculas y minúsculas?

Hay que tener en cuenta que se distingue entre mayúsculas y minúsculas, en este caso no sirve usar siempre minúsculas. Es decir, un  comando tipo “Disallow: /pagina.html” sí permitiría que se indexase la página “midominio.com/Pagina.html“.

14 Apr, 2016
Ratings
9.66667
(3 votes)
Your rating
Collected
JValenzuela
JValenzuela