Descuento 20% Diciembre
Plugin Optimización de Imágenes Gratuito para WordPress
Miércoles, 30 Marzo 2016 23:38

PrestaShop y robots.txt ¡una historia de amor!

Escrito por 
CMS:  Joomla! |  Versión:  Todas |  Nivel de dificultad:  Básico |  Tiempo estimado de lectura:  1 minuto


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 interesante este artículo?

Suscríbete para recibir consejos exclusivos para WordPress, Joomla y PrestaShop



Luis Méndez Alejo

Miembro del equipo técnico de Webempresa.
Coordinador de contenidos en el Blog y en Youtube.
Google+


Plugin Optimización de Imágenes Gratuito para WordPress