# robots.txt — Tudetic.com multi-shop (PrestaShop 9.1.1 + Hummingbird) # Refactor 2026-05-30 — agrupado por user-agent, sin duplicados por shop. # Política AI / GEO: explicit allow para crawlers IA principales, bloqueo CCBot y cohere-ai. # =========================================================================== # AI crawlers — explicit allow / block # =========================================================================== User-agent: GPTBot Allow: / Disallow: /gb/ Disallow: /*imagen-generica* User-agent: OAI-SearchBot Allow: / Disallow: /gb/ User-agent: OAI-AdsBot Allow: / Disallow: /gb/ User-agent: ChatGPT-User Allow: / Disallow: /gb/ User-agent: ClaudeBot Allow: / Disallow: /gb/ User-agent: Claude-SearchBot Allow: / Disallow: /gb/ User-agent: Claude-User Allow: / Disallow: /gb/ User-agent: anthropic-ai Allow: / Disallow: /gb/ User-agent: PerplexityBot Allow: / Disallow: /gb/ User-agent: Perplexity-User Allow: / User-agent: Google-Extended Allow: / Disallow: /gb/ User-agent: Applebot-Extended Allow: / Disallow: /gb/ User-agent: Bingbot Allow: / Disallow: /gb/ User-agent: CCBot Allow: / Disallow: /gb/ Disallow: /admin/ User-agent: cohere-ai Allow: / Disallow: /gb/ # =========================================================================== # Default policy — applies to all user-agents not listed above # =========================================================================== User-agent: * # --- Interfaces públicas para agentes y catálogos --- Allow: /ai/ Allow: /mcp/ Allow: /.well-known/mcp.json Allow: /llms.txt Allow: /llms-*.txt # --- Allow theme assets needed for rendering --- Allow: */modules/*.css Allow: */modules/*.js Allow: */modules/*.png Allow: */modules/*.jpg Allow: /js/jquery/* # Tudetic 2026-09-02 T-08/INDEX-06: el JS propio del tema Hummingbird vive bajo # /themes/*/assets/js/ (menú móvil, selector de idioma, autocompletado de dirección en # checkout) — NO bajo /modules/ ni /js/jquery/, así que caía en el Disallow: */js/ genérico # de abajo (regla más larga/específica gana en el algoritmo de Google). Debe declararse # ANTES de ese Disallow para ganarle. Allow: /themes/*/assets/js/* Allow: */themes/*/assets/js/* # --- Private / non-indexable sections --- # Tudetic 2026-09-02 T-08/GSCDIFF-06: /gb/ SOLO bloqueado para bots de IA (arriba). Para # Googlebot/Bingbot/etc (bloque genérico) se retira: los 301 /gb/->/en/ eran invisibles # para Google mientras estuvieran bloqueados aquí, así que 491 URLs /gb/ seguían indexadas # como zombis en vez de consolidarse en /en/ (GSC: googleCanonical=la propia URL /gb/, # "indexada aunque bloqueada por robots.txt"). Dejar que el rastreo normal siga los 301. # Placeholder imagen-generica.jpg se estaba indexando como contenido Disallow: /*imagen-generica* # URLs malformadas con bug rewrite=aaa Disallow: /*?*rewrite=aaa* # --- Query-string filters / sort / search / pagination --- # numPagina se mantiene bloqueado: T-07 (2026-09-02) deja de EMITIRLO en los href de # paginación (ahora ?page=N, ver CAT-03/RENDER-05); numPagina solo sobrevive como # atributo data- para el JS, así que no hace falta desbloquearlo. Disallow: /*?numPagina= Disallow: /*&numPagina= Disallow: /*?order= Disallow: /*?tag= Disallow: /*?id_currency= Disallow: /*?search_query= Disallow: /*?back= Disallow: /*?n= Disallow: /*&order= Disallow: /*&tag= Disallow: /*&id_currency= Disallow: /*&search_query= Disallow: /*&back= Disallow: /*&n= # Tudetic 2026-09-02 T-07/T-08 (RENDER-06/CAT.md §10): timestamp es basura cache-buster # de JS legacy sin valor de contenido; busqueda es el buscador 100% JS-dependiente # (RENDER-07) — bloquear todas las tiendas/idiomas en vez de solo /*es/busqueda. Disallow: /*?timestamp= Disallow: /*×tamp= Disallow: /*/busqueda? Disallow: /busqueda? # --- PrestaShop legacy controllers (cart / checkout / account / ajax) --- 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-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 # --- PrestaShop internal directories --- # El patrón */dir/ cubre /dir/, /es/dir/, /gb/dir/, /mototic/dir/, /autotic/dir/, # /biketic/dir/, /scubatic/dir/, /trekktic/dir/, /cubiertasparabicicleta/dir/, /ociotic/dir/. # Sustituye los 8 bloques duplicados de la versión anterior. Disallow: */app/ Disallow: */cache/ Disallow: */classes/ Disallow: */config/ Disallow: */controllers/ Disallow: */download/ Disallow: */js/ Disallow: */localization/ Disallow: */log/ Disallow: */mails/ Disallow: */modules/ Disallow: */override/ Disallow: */pdf/ Disallow: */src/ # 2026-10-14 T-072: */tools/ casaba tambien con fichas de la categoria inglesa "tools" # (/biketic/en/tools/-....html, 1.961 en el sitemap) y Googlebot no las rastreaba. # La carpeta real solo se alcanza en la raiz (abajo, /tools/) y tras el prefijo de tienda. Disallow: /mototic/tools/ Disallow: /biketic/tools/ Disallow: /autotic/tools/ Disallow: /scubatic/tools/ Disallow: /ociotic/tools/ Disallow: /decortic/tools/ Disallow: /trekktic/tools/ Disallow: */translations/ Disallow: */upload/ Disallow: */var/ Disallow: */vendor/ Disallow: */webservice/ # Fallback raíz para crawlers que no soporten wildcard inicial Disallow: /app/ Disallow: /cache/ Disallow: /classes/ Disallow: /config/ Disallow: /controllers/ Disallow: /download/ Disallow: /js/ Disallow: /localization/ Disallow: /log/ Disallow: /mails/ Disallow: /modules/ Disallow: /override/ Disallow: /pdf/ Disallow: /src/ Disallow: /tools/ Disallow: /translations/ Disallow: /upload/ Disallow: /var/ Disallow: /vendor/ Disallow: /webservice/ # --- Friendly URL aliases /es/ (ES) y /gb/ (EN) account / cart paths --- Disallow: /*es/direccion Disallow: /*es/direcciones Disallow: /*es/iniciar-sesion Disallow: /*es/carrito Disallow: /*es/descuento Disallow: /*es/seguimiento-pedido-invitado Disallow: /*es/historial-compra Disallow: /*es/datos-personales Disallow: /*es/mi-cuenta Disallow: /*es/pedido Disallow: /*es/confirmacion-pedido Disallow: /*es/seguimiento-pedido Disallow: /*es/facturas-abono Disallow: /*es/recuperar-contraseña Disallow: /*es/busqueda Disallow: /*gb/address Disallow: /*gb/addresses Disallow: /*gb/login Disallow: /*gb/cart Disallow: /*gb/discount Disallow: /*gb/guest-tracking Disallow: /*gb/order-history Disallow: /*gb/identity Disallow: /*gb/my-account Disallow: /*gb/order Disallow: /*gb/order-confirmation Disallow: /*gb/order-follow Disallow: /*gb/credit-slip Disallow: /*gb/password-recovery Disallow: /*gb/search # =========================================================================== # Sitemaps # =========================================================================== # Master index — cubre los shops del mono-dominio (~30 chunks total) Sitemap: https://www.tudetic.com/sitemap_index.xml # Tudetic 2026-09-24 T89: tienda 8 Ociotic (www.tudetic.com/ociotic/), indice propio del shop. Sitemap: https://www.tudetic.com/8_index_sitemap.xml # 10-10-2026: retirada la linea Sitemap de cubiertasparabicicleta.com. Ese dominio redirige # entero (301) a www.tudetic.com/biketic/ desde el arbol 2026 y su tienda (7) ya va en # sitemap_index.xml como 7_index_sitemap.xml. Aqui solo sitemaps de www.tudetic.com.