blog webempresa

PrestaShop y robots.txt ¡una historia de amor!

por | Mar 30, 2016 | SEO PrestaShop

PrestaShop y robots.txtQue PrestaShop necesita de robots.txt para lidiar con los bots de indexado de los diferentes motores de búsqueda es una realidad, por eso quiero contarte una historia de amor entre PrestaShop y robots.txt con un final feliz.

Claro que puedes generar el archivo robots.txt desde el backoffice, Preferencias, SEO y URLs desde la opción Generación de archivos Robots. Eso lo damos por sentado.

Muchos usuarios, principalmente aquellos que se inician en PrestaShop para crear su primera Tienda online, no se paran al principio de la puesta en marcha de su proyecto web con este CMS a generar correctamente archivos importantes como el sitemap y robots.txt y pasado un tiempo (apenas unos meses) comienzan los problemas en forma de errores de rastreo. ¡Sigue leyendo que te lo cuento con más detalles!

Gracias al archivo robots.txt le puedes decir a los buscadores que puede ser rastreado en tu sitio web por parte de sus bots de indexado (llámalas arañas, crawlers, o como quieras), y que ‘no quieres’ que sea indexado.

El archivo que gestiona las directrices de comportamiento de estos bots se ha de llamar robots.txt y no de otra forma y almacenarse en la carpeta principal de la instalación a la que sirve.

Si tienes varias instalaciones en un mismo Hosting, cada una de ellas estará en una carpeta diferente, y dentro de cada instalación, en la carpeta principal habrá un archivo robots.txt personalizado para cada web.

Hay una función en PrestaShop llamada AdminMetaController::generateRobotsFile() que se encarga de generar el archivo robots.txt y que puede ser invocada manualmente desde SEO y URLs como cité antes.


Generación de archivos Robots


Por defecto el archivo robots.txt se crea con el siguiente contenido:

# robots.txt automatically generated by PrestaShop e-commerce open-source solution 
# http://www.prestashop.com - http://www.prestashop.com/forums 
# This file is to prevent the crawling and indexing of certain parts 
# of your site by web crawlers and spiders run by sites like Yahoo! 
# and Google. By telling these "robots" where not to go on your site, 
# you save bandwidth and server resources. # For more information about the robots.txt standard, see: 
# http://www.robotstxt.org/robotstxt.html 
User-agent: * 
# Allow Directives 
Allow: */modules/*.css 
Allow: */modules/*.js 
# Private pages 
Disallow: /*?orderby= 
Disallow: /*?orderway= 
Disallow: /*?tag= 
Disallow: /*?id_currency= 
Disallow: /*?search_query= 
Disallow: /*?back= 
Disallow: /*?n= 
Disallow: /*&orderby= 
Disallow: /*&orderway= 
Disallow: /*&tag= 
Disallow: /*&id_currency= 
Disallow: /*&search_query= 
Disallow: /*&back= 
Disallow: /*&n= 
Disallow: /*controller=addresses 
Disallow: /*controller=address 
Disallow: /*controller=authentication 
Disallow: /*controller=cart 
Disallow: /*controller=discount 
Disallow: /*controller=footer 
Disallow: /*controller=get-file 
Disallow: /*controller=header 
Disallow: /*controller=history 
Disallow: /*controller=identity 
Disallow: /*controller=images.inc 
Disallow: /*controller=init 
Disallow: /*controller=my-account 
Disallow: /*controller=order 
Disallow: /*controller=order-opc 
Disallow: /*controller=order-slip 
Disallow: /*controller=order-detail 
Disallow: /*controller=order-follow 
Disallow: /*controller=order-return 
Disallow: /*controller=order-confirmation 
Disallow: /*controller=pagination 
Disallow: /*controller=password 
Disallow: /*controller=pdf-invoice 
Disallow: /*controller=pdf-order-return 
Disallow: /*controller=pdf-order-slip 
Disallow: /*controller=product-sort 
Disallow: /*controller=search 
Disallow: /*controller=statistics 
Disallow: /*controller=attachment 
Disallow: /*controller=guest-tracking 
# Directories 
Disallow: */classes/ 
Disallow: */config/ 
Disallow: */download/ 
Disallow: */mails/ 
Disallow: */modules/ 
Disallow: */translations/ 
Disallow: */tools/

La forma más rápida de ver si tu archivo robots.txt se ha generado correctamente o existe ya en tu Hosting, en la instalación de PrestaShop, es escribiendo en el navegador la url de tu dominio seguido de robots.txt:

http://tu-dominio.com/robots.txt

Si recibes un error 404 es que no existe y tendrás que crearlo.

Not Found
The requested URL /robots.txt was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

Las últimas versiones de PrestaShop ya incorporan en el generador de robots.txt el que no se bloquee a Google y otros bots de indexado los archivos CSS y JS. Bloquear estos archivos provocaba errores como:

“El robot de Google no puede acceder a los archivos CSS y JS”

Esto queda solucionado con la incorporación de los siguientes Allow a robots.txt:

Allow: */modules/*.css 
Allow: */modules/*.js
La mejor forma de comprobar el estado de salud de tus archivos robots.txt es utilizando Google Search Console para comprobar tanto su existencia y localización por parte de los bots, como si se generan errores de bloqueo, en este caso a googlebot.


¿Qué le pasa a los bots de indexado con robots.txt?

El archivo robots.txt se crea para bloquear el acceso a diferentes elementos de PrestaShop y que no son de interés para los buscadores.

¿Qué no interesa indexar?

  • Página de acceso (login) de usuarios.
  • Resultados de búsquedas o página de búsquedas.
  • Página de recuperación de contraseña.
  • Página de checkout o carrito de compra.
  • Resultados o página de consulta de pedidos realizados.
  • Páginas o áreas restringidas para usuarios con acceso VIP.
  • Otras páginas o funcionalidades que estimes oportuno bloquear.

Lo que realmente se necesita indexar en una tienda online serían las páginas de categorías, páginas de productos, página de inicio y otras páginas estáticas o informativas.


¿Cómo generar un archivo robots.txt para PrestaShop?

Un archivo robots.txt contiene un conjunto de reglas. Las reglas están definidas por tres valores:

  • User-Agent: ¿A quién afectan las reglas? (Todos los robots, solamente Google, Bing, un bot único…).
  • Permitir/No permitir: (Allow / Disallow) Una regla que permite o por el contrario que filtra algunas URLs.
  • Expresión regular de URLs: URL, archivo, ruta afectada por esta regla.

En el siguiente vídeo de apenas 1 minuto puedes ver cómo se genera por primera vez este archivo robots.txt en PrestaShop.



Si llevas tiempo con la tienda y crees que tu archivo robots.txt no es correcto o quieres regenerarlo, lo mejor es que lo elimines (si no lo has personalizado) y lo crees de nuevo con las indicaciones dadas en el vídeo.


¿Qué otros elementos puedes añadir al archivo robots.txt?

# Archivos 
Disallow: /*id_lang= 
Disallow: /*utm_campaign= 
# Directorios 
Disallow: /lang-es/

Nota: Si trabajas con otro idioma o varios idiomas (multi idiomas) podrás añadir líneas adicionales:

# Directorios 
Disallow: /lang-es/ 
Disallow: /lang-en/ 
Disallow: /lang-fr/

Nota: Los espacios en los archivo robots.txt no sirven para nada, los bots no leen espacios así que sencillamente no los pongas, piensa que es un archivo exclusivo para bots o crawlers y no para humanos, por lo que la estética en estos casos queda de lado.


Es importante que cada cierto tiempo y principalmente tras actualizar PrestaShop a versiones estables, compruebes que dicho archivo existe y que no bloquea el indexado a contenidos importantes de tu Tienda.

¿A que pensabas que era más complicado esto del robots.txt? ..jejeje, cuesta mas nombrarlo que ponerlo en marcha. (ツ)

¿Te ha resultado útil este artículo?

Promo hosting noviembre