Crear y optimizar Robots.txt en WordPress – La Mejor Guía

por | May 4, 2020 | SEO WordPress

Cómo optimizar robot.txt en WordPress

Seguramente tu web tiene partes innecesarias y no quieres que los buscadores pierdan el tiempo rastreándolas.

Si agilizas el trabajo a buscadores como Google haciendo que el rastreo de tu web sea lo más accesible y rápido posible harás que se llegue a las partes realmente importantes y que quieres posicionar.

Para ello, marcar páginas como noindex o establecer sugerencias como enlaces nofollow pueden agilizar ese proceso de ligereza en el rastreo; pero puedes hacer mucho más y para esto existe el archivo robots.txt.

 

¿Qué es el robots.txt?

El robots.txt es un pequeño fichero que permite indicar a los bots de los buscadores que partes de un sitio web pueden rastrear y cuáles no.

Cuando el robot de Google, Bing, Yandex o cualquier otro buscador accede a una web, lo primero que hace es acceder al Robots.txt (si lo tiene creado).

En base a ello tomara una u otras decisiones de análisis en función de las órdenes que tengamos marcadas.

Si no lo tienes creado, accederá sin atender a ninguna orden o prohibición previamente indicada lo cual puede ser en ocasiones perjudicial sobre todo en webs de mucho contenido.

En resumen: el Robots.txt no es obligatorio pero sí muy recomendable optimizarlo porque ayudará al posicionamiento de tu web.

 

¿Para qué usar el robots.txt?

De la misma manera que debes hacer que Google no indexe urls no importantes de tu web indicando como noindex páginas como “política de privacidad” “política de cookies”, “aviso legal” “urls con contenido que no se busca en Google”; debes usar el robots para cerrar el acceso de forma más drástica a Google a esas urls o partes de la web.

No podemos confundir noindex con robots.txt ya que sus funciones son diferentes.

  • Noindex: No muestra una determinadas páginas en las Serps o lo que los mismo, permite a Google indexar un contenido.
  • Robots.txt: Bloquea el acceso a las urls marcadas para que Google no pueda leer el html, lo que incluye leer el noindex.

Google recomienda usar noindex para no mostrar urls en las serps:
Si no deseas que determinadas páginas aparezcan en los resultados de búsqueda, «no utilices el archivo robots.txt para ocultar tu página web«, tal como explica Google

Aunque las órdenes indicadas en el robots.txt suelen ser obedecidas por los buscadores, no son efectivas al 100% pudiendo Google u otros obviar las intrucciones indicadas y rastrear las urls bloquedas.

Según dice Google, la información que das en tu archivo robots.txt son instrucciones, no reglas.

Si varios enlaces apuntan a esta página, es posible que Google la indexe y la muestre en sus resultados de búsqueda, sin saber lo que contiene, incluso si la has bloqueado en tu archivo robots.txt

 

Cómo crear un robots.txt

Para ver si una web tiene creado un archivo robots.txt sólo tienes que indicar después del dominio /robots.txt.

Ejemplo: webempresa.com.com/robots.txt

La creación del archivo robots.txt es muy sencillo y puedes hacerlo de varias formas:

  1. Creando un archivo.txt anotando lo que quieres bloquear y subiendo este a la raíz de tu web.

    – Abre un blog de notas indica las directivas que quieres y guárdalo con el nombre robots.txt.

    – Ahora sólo tienes que subirlo a la raíz de tu web y ya está.

  2.  

  3. Usando un plugin como Yoast Seo.

    – Accede a la opción de Yoast herramientas y haz clic en Crear Robots.txt.

    Como puedes ver, crea un robots prediseñado por defecto que podrás guardar y ya lo tienes creado a falta de indicar el sitemap.

 

 

Para ello, tanto si usas Yoast como el blog de notas debes indicar la siguiente línea:

– Si usas el plugin Google xml Sitemap:

Sitemap: tusitioweb.com/sitemap.xml 

 

– O si usas el sitemap de Yoast Seo:

Sitemap: tusitioweb.com/sitemap_index.xml 

 

Para insertar el sitemap dentro del robots.txt solo tienes que copiar la ruta de tu sitemap con tu dominio en el robots.txt

Recuerda pegarlo al final del robots.txt.

 

¿Cómo indicar a Google que he creado el robots.txt?

Muy sencillo, accede a tu Google Search Console y en el apartado de Ayuda (?) escribe: robots.txt.

Aparecerá como primer resultado: Probar tu archivo robots.txt. Haz clic y se abrirá la herramienta de robots.txt.

Ten en cuenta que no es lo mismo subir el archivo Robots.txt que validarlo en Google Search Console, para validarlo tendrás que haberlo creado previamente.

Pantalla Search Console Buscar Robots.txt

Escoge una propiedad (tu dominio) y copia y pega el robots.txt creado en el blog de notas o en Yoast.

Haz clic en enviar y escoge la opción “Solicita a Google la actualización”.

Te dejo un enlace directo al validador de Robots.txt de Search Console

Asegúrate de que no genera error.

Ya sólo tienes que acceder al navegador y escribir tusitioweb.com/robots.txt y ver si se muestra.

Google Search console sigue haciendo mejoras y cambios en su interfaz, es posible que cambie o añada esta opción de probador en otro sitio más adelante

Con esto ya tendrás tu robots creado y estarás facilitando el rastreo en Google aunque es personalizable todo lo que quieras.

Tienes que tener cuidado porque cada web es diferente y un error en un simple * o / puede hacer que Google no rastree partes que sí son importantes.

Vamos a ver el robots creado por defecto y las diferentes opciones para crear un robots a medida.

 

Cómo es el robots.txt creado por defecto en WordPress

Este es el código por defecto creado.

user-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

*Aquí habría que añadir la línea de tu sitemap.

En ellas vemos disallow (no permitir) y allow (permitir).

En el existen 3 lineas:

  • User-agent: *: Permite a todos los buscadores rastrear tu web.
  • Disallow: /wp-admin: Evita que los buscadores pierdan tiempo en rastrear el administrador de WordPress.
  • Allow: /wp-admin/admin-ajax.php/: Dentro de la prohibición anterior, los buscadores sí deben rastrear admin-ajax-php.

Si tu web estuviera bloqueada para los motores de búsqueda (opción en los ajustes de WordPress mientras se diseña una web) tu robots tendría un Disallow: /
Tienes que tener cuidado porque si mostrará esto estás diciendo a Google que no rastree absolutamente nada de tu web.

La parte más importante en un robots se encuentra en los comodines, es importante conocer todos los códigos a emplear como el signo del *, el $ etc… Vamos a verlo

 

Comodines a utilizar en un robots.txt.

En la creación del robots debes respetar las mayúsculas, minúsculas, espacios.
No es lo mismo indicar /wp-content que /WP-content
Cualquier error en un espacio, un símbolo fuera de sitio puede perjudicar mucho a tu web en cuestión de posicionamiento.
 

Almohadilla (#)

Este símbolo simplemente lo puedes usar para anotar comentarios indicando que significan las diferentes líneas a tratar.

Ejemplo: #bloqueo de búsquedas o #bloqueo de trackbacks.

De esta manera tendrás control de lo que quieres indicar y estará más ordenado.

 

User-agent

Indica a que bots quieres dirigirte. Lo normal es que todos los bots accedan a tu web para ello por defecto es:

User-agent: *

 

User Agent

Pero si por ejemplo sólo quieres que sea el robot de Google el que tenga acceso o establecer una regla concreta para Google habrá que añadir la línea:

User-agent: Googlebot 

 

Todo lo que añadas debajo se aplicará exclusivamente al robot de Google.

Es importante que los user-agent vayan separados por espacios porque de lo contrario si están juntos, las reglas de debajo se aplicarán a todos.
Si establecemos varios user-agent del mismo bot, el más específico o largo será el que mande.

Ejemplo:

User-agent: Googlebot-Image
Disallow: / 

prevalecerá sobre:

User-agent: Googlebot
Disallow: 

(permite el rastreo al no llevar /)

 

El asterisco (*)

Se trata de un símbolo comodín que representa cualquier secuencia de caracteres.

Si por ejemplo indicamos /*.pdf nos estaremos refiriendo a todos los archivos que contengan .pdf.

Y valdrá tanto para tusitioweb.com/document.pdf como para tusitioweb.com/document.pdf?ver=1.1

El uso del asterisco es muy importante

Imagina que quieres evitar que los motores de búsqueda accedan a las URL de categorías de productos con parámetro en tu sitio.

Lo puedes hacer así:

User-agent: * 
Disallow: / productos / camisetas?
Disallow: / productos / camisas?
Disallow: / productos / abrigos?
 

 

O hacer uso del * (mejor opción)

User-agent: * 
Disallow: / productos / *?

 

Al marcar el * estarás indicando a los buscadores que no rastreen absolutamente ningún producto con parámetros.

 

El símbolo del dólar ($)

Si existiese algún carácter después de dicho símbolo ($) no se aplicará la regla.

Si por ejemplo indicamos /*.pdf$ nos estaremos refiriendo a todos los archivos que terminen con un .pdf.

Esto incluye a tusitioweb.com/document.pdf pero excluye a tusitioweb.com/document.pdf?ver=1.1

Usa el comodín “$” para marcar el final de una URL.

Por ejemplo, si desea evitar que los motores de búsqueda accedan a todos los archivos .pdf en su sitio, su archivo robots.txt podría verse así:

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

 

Noindex y nofollow

Desde el 01 de septiembre del 2019 no es recomendable marcar noindex en el robots, si bien puedes y debes usarlo en la etiqueta meta robots o el encabezado HTTP x-robots en su lugar.

De la misma manera tampoco debes usar nofollow.

 

Disallow

Esta directiva evita que los buscadores rastreen una página, una categoría o una estructura determinada.

Un disallow prohíbe entrar a Google en él.

Imagen “disallow-robots”

Aunque tengas marcado como noindex una página a la que asignes disallow, los bots pueden indexarla aunque no su contenido.

Te explico; si marcas una página como noindex, la url ni su contenido interno se mostraran en las serps, aunque los buscadores sí pueden llegar a incluir la url en las serps con una metadescripción indicando que hay robots.

Esto puede suceder si consideran por ejemplo que la página tiene enlaces entrantes y es de calidad.

  • ¿Qué ocurre con el Linkjuice en un Disallow?

El linkjuice (fuerza de una página) no se traspasaría a otra url si estamos bloqueando por robots la primera.

Te lo explico:

Ejemplo: Imagina que marcamos

Disallow: /servicio1/

Servicio1 recibe enlaces de la home y a su vez servicio1 tiene enlaces hacia servicio2.

Servicio1 seguirá recibiendo su fuerza pero no la traspasará a servicio2 ya que hemos bloqueado por robots esa url.

 

  • Bloqueo de páginas que empiezan por…
Disallow: /paginaprueba 

Bloquea todas la urls que empiezan por paginaprueba pero no los que delante tengan algo, para ello necesitarías incluir un * .

Es decir, bloquearía todas las URL que empezasen por /paginaprueba tales como: tusitioweb.com/paginaprueba/ o tusitioweb.com/paginaprueba-imagen/contacto.

Pero necesitaríamos de un * delante:

tusitioweb.com/*paginaprueba

Si queremos bloquear por ejemplo tusitioweb.com/ejemplo-paginaprueba o tusitioweb/categoría/paginaprueba

 

  • Bloqueo de carpeta

Si quieres bloquear la carpeta de página prueba, deberás colocar una barra lateral al final de la directiva de la siguiente manera:

Disallow: /paginaprueba/

De esta manera bloquearemos todas las URL que contengan dicha carpeta como por ejemplo:

tusitioweb.com/paginaprueba/
tusitioweb.com/paginaprueba/imagenes/

Pero no bloquearíamos aquellas URL que no contengan exactamente esa carpeta ejemplo:

tusitioweb.com/paginaprueba-imagenes/portfolio
tusitioweb.com/index/paginaprueba
tusitioweb.com/imagenes-paginaprueba

Otro ejemplo:

Imagina que clonas tu web creando una subcarpeta en el servidor llamada /cop.

Si pones:

Disallow: /cop

no sólo estarás bloqueando la subcarpeta, también lo harás para páginas como /copia-seguridad/, /cocinando-patatas o /copiadora-epson/

La solución es bloquear la carpeta entera poniendo una / al final

Es decir:

Disallow: /cop/

 

Y como siempre, si quisiésemos bloquear todas las URL que contengan /paginaprueba/ independientemente de la posición debemos usar lo siguiente:

Disallow: /*/ paginaprueba/

 

Y recordando el $, si lo que deseamos es bloquear todas las URL que finalicen en paginaprueba deberíamos utilizar:

Disallow: /* paginaprueba$

 

Allow

La función Allow es la contraria a Disallow y se usa exclusivamente para permitir el acceso a partes específicas bloqueadas previamente por disallow.

Imagen “allow-robots”

Ejemplo: es normal bloquear la carpeta /wp-content/plugins/ ya que no queremos que los buscadores pierdan el tiempo aquí, pero Google por ejemplo indica que debe tener acceso a los archivos .css y .js.

Como en esta carpeta existen estos archivos debemos dar permiso para el rastreo de la siguiente manera:

Disallow: /wp-content/plugins/
Allow: /wp-content/plugins/*.js
Allow: /wp-content/plugins/*.css

 

Imagina que quieres bloquear todo el blog menos una entrada, puedes aplicar lo siguiente;

User-agent: *
Disallow: /blog
Allow: /blog /post-permitido

 

Cómo optimizar el Robots al máximo

No hay una regla fija y tienes que tener cuidado a la hora de replicar los robots de otras webs ya que puede ser contraproducente.

Un ejemplo de un robots estándar con algunas reglas puede ser el siguiente:

# Bloquear o permitir acceso a contenido adjunto. (Si la instalación está en /public_html).

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-content/plugins/   
Disallow: /wp-content/themes/   
Disallow: /wp-includes/   
Disallow: /wp-admin/

#Impedir el acceso a los diferentes feed que genere la página

Allow: /feed/$
Disallow: /feed   
Disallow: /comments/feed   
Disallow: /*/feed/$   
Disallow: /*/feed/rss/$   
Disallow: /*/trackback/$   
Disallow: /*/*/feed/$   
Disallow: /*/*/feed/rss/$   
Disallow: /*/*/trackback/$   
Disallow: /*/*/*/feed/$   
Disallow: /*/*/*/feed/rss/$   

# Impedir URLs terminadas en /trackback/ que sirven como Trackback URL.   

Disallow: /*/*/*/trackback/$

# Evita bloqueos de CSS y JS.

Allow: /*.js$
Allow: /*.css$

#Bloquear todos los pdfs

Disallow: /*.pdf$

#Bloquear parámetros

Disallow: / *?

# Lista de bots que deberías permitir.

User-agent: Googlebot-Image
Allow: /wp-content/uploads/

User-agent: Adsbot-Google
Allow: /

User-agent: Googlebot-Mobile
Allow: /


 # Lista de bots bloqueados

User-agent: MSIECrawler
Disallow: /
User-agent: WebCopier
Disallow: /
User-agent: HTTrack
Disallow: /
User-agent: Microsoft.URL.Control
Disallow: /
User-agent: libwww
Disallow: /
User-agent: Baiduspider
Disallow: /
User-agent: GurujiBot
Disallow: /
User-agent: hl_ftien_spider
Disallow: /
User-agent: sogou spider
Disallow: /
User-agent: Yeti
Disallow: /
User-agent: YodaoBot
Disallow: /

#Desautorizar a páginas innecesarias

Disallow: /gracias-por-suscribirte

# Añadimos una indicación de la localización del sitemap

Sitemap: https://sitioweb/sitemap_index.xml

Puedes querer hacer disallow a los comentarios, etiquetas etc… Cada web es diferente pero piensa si quieres que los buscadores pierdan tiempo en rastrear eso.

 

¿Necesitas un archivo robots.txt?

Esta es la pregunta que te puedes hacer.

Como he mencionado tener un robots.txt no es esencial para sitios pequeños, aunque mi recomendación es que si puedes usarlo y mejorar el posicionamiento cuando lo uses.

Un buen robots.txt creado puede ayudarte en:

  • Tareas de mantenimiento al poder incluir un Disallow: /
  • Prevención de sobrecarga del servidor, ya que pueden existir menos peticiones a páginas innecesarias.
  • Evitar que Google desperdicie el presupuesto de rastreo aumentando la probabilidad de mejor acceso y por más tiempo a páginas relevantes.
  • Puedes evitar contenido duplicado. Puedes evitar que se rastreen páginas como el checkout o el carrito en una tienda online (Disallow: /checkout/ y Disallow: /cart/)

El robots.txt solo es independiente de los subdominios.

Es decir si tienes un subdominio creado tienes que crear un robots específico para el subdominio creado.

 

Conclusión

El robots puede ayudar mucho al rastreo de tu web pero tienes que asegurarte mucho del buen funcionamiento del mismo.

Una simple coma o mayúscula errónea puede hacer daños a nivel de SEO importantes.

Si es o no necesario en todos los sitios depende. Tienes que saber que, en webs pequeñas con arquitecturas sencillas lo cierto es que los buscadores la rastreen sin problemas.

Incluso existen webs importante de SEO que comentan no usar robots.txt ya que Google es lo suficientemente inteligente para entender una web.

Sin embargo, siempre digo que en el SEO todo ayuda por pequeño que sea.

Si puedes hacer que Google priorice y entienda mejor tu sitio haciéndole ahorrar tiempo mi recomendación es que uses un robots coherente sin volverte loco.

¡Hasta aquí la Guía sobre Robots, te recomiendo que trabajes en tu robots.txt y que aumente el rastreo!