Guía

El trabajo de SEO que PrestaShop no hará por usted

Guía completa de SEO técnico para PrestaShop: URLs amigables, etiquetas canónicas, hreflang, datos estructurados, sitemaps XML y Core Web Vitals.

Qué mueve realmente el SEO de PrestaShop (y qué no)

Hemos visto tiendas de clientes perder el 40% de su tráfico orgánico de la noche a la mañana por una sola etiqueta canonical mal configurada, y hemos visto a otras duplicar sus páginas indexadas tras una tarde dedicada a corregir slugs duplicados. Después de gestionar y rescatar el SEO de decenas de tiendas PrestaShop desde 2013, el patrón es siempre el mismo: no se trata de densidad de palabras clave ni de "más contenido". Se trata de URLs, canonicals, datos estructurados y desperdicio de rastreo. Acierta en eso y dejarás de estorbar a tu propio posicionamiento. Falla en eso y ninguna cantidad de artículos de blog salvará la tienda.

Esta página es la referencia que nosotros mismos repasamos cuando auditamos a un cliente nuevo. Recoge las rutas exactas de los ajustes, las tablas de la base de datos que consultamos y los patrones que aplicamos en nuestros propios módulos SEO, Smart SEO Revolution Suite, Advanced SEO Sitemap Builder, Automatic SEO Schema Rich Snippets, Smart SEO Friendly URL Manager: para que puedas incorporar las mismas comprobaciones a tu propio flujo de trabajo, los uses o no.

Una tienda de 10.000 productos con URLs limpias y canonicals correctos puede superar a un competidor de 50.000 productos con URLs desordenadas. Lo hemos visto suceder en tiendas reales. La capa técnica es el techo; el contenido es el trabajo que se hace por debajo.

Estructura de URLs y URLs amigables

Ajustes de SEO y URLs en el Back Office de PrestaShop 8.

Las URLs amigables, el esquema de URL para productos/categorías/CMS y la configuración de rutas se encuentran todos en esta página.

Página de SEO y URLs del Back Office de PrestaShop 8 mostrando el interruptor de URL amigable y la configuración del esquema de rutas

En Parámetros de la tienda → Tráfico y SEO → SEO y URLs, activa URL amigable. Ese es el paso cero. Convierte index.php?id_product=42 en /mens-leather-wallet-42.html. En Apache, PrestaShop escribe el .htaccess por ti. En Nginx (lo que ejecutan en su mayoría nuestros clientes de hosting) las reglas de reescritura las escribes tú mismo.

Tras activarla, pulsa Generar archivo .htaccess. Si la tienda reside en un subdirectorio, comprueba dos veces el RewriteBase. Hemos depurado suficientes incidencias del tipo "las URLs amigables devuelven 404" como para saber que la respuesta casi siempre es una de esas dos cosas.

Eliminar los IDs de las URLs (PS 8+)

En Parámetros de la tienda → Tráfico y SEO, busca Ruta a los productos y Ruta a las categorías:

# Por defecto (con ID)
{category:/}{id}-{rewrite}.html

# URL limpia (sin ID): PS 8+
{category:/}{rewrite}.html

Más limpia, sí. También más arriesgada. PrestaShop resuelve las URLs limpias mediante ps_product_lang.link_rewrite. ¿Dos productos con el mismo slug? Gana la primera coincidencia y el otro producto queda inaccesible.

Antes de accionar este interruptor, ejecuta esto contra la base de datos de la tienda:

SELECT link_rewrite, id_lang, COUNT(*) as cnt FROM ps_product_lang GROUP BY link_rewrite, id_lang HAVING cnt > 1;

Corrige cada duplicado antes de publicar el cambio. De lo contrario, productos en vivo desaparecen del catálogo y te enteras tú por la queja de un cliente.

Para tiendas que no quieren vigilar cada slug y redirigir a mano, Smart SEO Friendly URL Manager gestiona la capa de URL de principio a fin. El trasfondo estratégico (por qué importan los canonicals, cómo genera duplicados PrestaShop) está en Estructura de URLs en PrestaShop: URLs limpias, canonicals y cómo evitar el contenido duplicado.

Reglas de URL que aplicamos en cada tienda

  • Barras finales: las categorías terminan en /, los productos en .html. Elige un patrón por tipo y haz un 301 del otro. Si tanto /shoes como /shoes/ devuelven 200, Google ve dos páginas.
  • Mantén los slugs cortos: de 3 a 5 palabras. /mens-leather-wallet.html es mejor que /mens-genuine-italian-leather-bifold-wallet-brown.html, tanto para el posicionamiento como para poder compartirla.
  • Guiones, no guiones bajos: Google trata los guiones como separadores de palabras. PrestaShop ya lo hace así; no luches contra ello.
  • Nunca cambies URLs en vivo sin 301. Usa la página de SEO y URLs para añadir redirecciones a cualquier URL que modifiques. Hemos visto tiendas arruinar su posicionamiento renombrando en masa los slugs de los productos sin redirecciones.

Títulos y descripciones meta

Pestaña SEO del producto en PrestaShop 8.

Título meta, descripción meta, URL amigable, ajustes de redirección y etiquetas, todo en una sola pestaña. Aquí es donde se configura el SEO por producto, y donde la mayoría de los comerciantes nunca mira.

Pestaña SEO del editor de productos de PrestaShop 8 mostrando título meta, descripción meta, URL amigable y vista previa SERP

Cada página de PrestaShop tiene su propio título y descripción meta, almacenados por idioma en las tablas _lang:

# Productos:     ps_product_lang  → meta_title, meta_description, link_rewrite
# Categorías:    ps_category_lang → meta_title, meta_description, link_rewrite
# Páginas CMS:   ps_cms_lang      → meta_title, meta_description, link_rewrite
# Páginas estáticas: ps_meta_lang  → title, description, url_rewrite

Si un producto no tiene título meta, PrestaShop recurre al nombre del producto. "Classic T-Shirt" se convierte en <title>Classic T-Shirt</title>, sin marca, sin nombre de la tienda, sin nada que lo diferencie. Ese es el título que compite en los resultados de Google. No aceptes el valor por defecto en ningún producto que de verdad quieras posicionar.

Patrones de título que funcionan

Google muestra aproximadamente entre 50 y 60 caracteres antes de truncar. Las palabras importantes primero, el nombre de la tienda al final:

# Producto: Palabra clave principal - Característica principal | Nombre de la tienda
# Categoría: Nombre de la categoría - Rasgo diferenciador | Nombre de la tienda
# CMS: Tema de la página - Nombre de la tienda

Descripciones meta

Las descripciones meta no te posicionan. Influyen en el porcentaje de clics, que es lo que de verdad llena la cesta. Google muestra ~155 caracteres en escritorio y ~120 en móvil. Una llamada a la acción, una pista sobre el precio, una nota sobre el envío gratuito, cualquiera de ellas funciona. Lo que no funciona es la misma descripción genérica duplicada en 800 productos.

Si no puedes escribir descripciones únicas para un catálogo de 10.000 productos, déjalas en blanco. Google genera un fragmento a partir del contenido de la página, y casi siempre es más relevante que un texto repetido. Unas etiquetas meta a medias son peores que ninguna etiqueta meta.

Actualizaciones masivas mediante SQL

Para catálogos grandes, los títulos meta con plantilla mediante SQL ahorran días. Haz un JOIN de ps_product_lang con ps_category_lang por la categoría por defecto, CONCAT() del nombre del producto con el nombre de la categoría, y se escribe el resultado de vuelta. Ejecuta siempre primero como SELECT y haz siempre una copia de seguridad de la base de datos antes del UPDATE. Más de una vez hemos roto catálogos con una cláusula WHERE mal puesta; las copias de seguridad lo convierten en un arreglo de 5 minutos en lugar de uno de 5 horas.

URLs canonical

Los temas de PrestaShop generan las etiquetas canonical desde head.tpl. Los productos se canonicalizan a la URL base del producto, las categorías a la base sin filtrar. Eso cubre los casos obvios. Lo que no cubre:

  • Paginación: /wallets/?page=2 y ?page=3 son indexables por defecto. Cada página paginada debería autocanonicalizarse. Pon noindex en las más profundas si no quieres que posicionen.
  • Ordenación: ?order=product.price.asc crea un casi-duplicado. Bloquéalo en robots.txt o ponle noindex.
  • Navegación por facetas: el peor infractor. Cinco filtros con cinco valores cada uno son más de 3.000 URLs combinatorias por categoría. Usa noindex permitiendo el rastreo para excluirlas del índice, o bloquéalas en robots.txt para limitar el rastreo.
  • Producto en varias categorías: PrestaShop canonicaliza a la categoría por defecto. Esto es correcto; no intentes "arreglarlo".

Google eliminó rel="prev"/rel="next" en 2019. Cualquiera que aún te diga que los uses está leyendo un artículo de 2018. Los canonicals y el noindex son las únicas herramientas para la paginación hoy en día.

Canonicals en multitienda

Cada tienda debería canonicalizar a su propio dominio. Los canonicals entre dominios solo son correctos si una tienda está intencionadamente subordinada a otra, lo cual es raro. PrestaShop maneja esto correctamente cuando las tiendas tienen dominios separados; usa Product Canonical Manager cuando las excepciones a nivel de producto necesiten un control explícito. Consulta nuestra guía de multitienda para los detalles.

Hreflang para tiendas multilingües

Sin hreflang, Google elige una versión de idioma de tu tienda y suprime las demás. Hemos auditado tiendas donde la versión alemana del catálogo tenía cero impresiones porque la versión inglesa la superaba en las consultas en alemán. El hreflang lo arregló en un solo despliegue.

<link rel="alternate" hreflang="en" href="https://shop.com/en/wallet.html">
<link rel="alternate" hreflang="fr" href="https://shop.com/fr/portefeuille.html">
<link rel="alternate" hreflang="x-default" href="https://shop.com/en/wallet.html">

Usa códigos de idioma-país (en-GB, en-US) cuando tengas precios o contenido específicos por región. Usa solo idioma (en, fr) en los demás casos. Incluye siempre x-default como respaldo para todos los que no estén cubiertos.

Dónde tropiezan las tiendas con hreflang

  • Etiquetas de retorno ausentes. La página A apunta a la B, la B no apunta de vuelta a la A. Google ignora ambas en silencio. Lo vemos cada vez que auditamos una tienda multilingüe configurada a mano.
  • Códigos erróneos. en-UK no existe. Es en-GB. ISO 639-1 para el idioma, ISO 3166-1 Alpha 2 para el país.
  • Hreflang en URLs no canónicas. Si la página se canonicaliza en otro sitio, su hreflang se ignora. Ambos tienen que coincidir.
  • Hreflang en páginas noindex. Las páginas con noindex no pueden ser destinos hreflang. Elige una cosa o la otra.
Una sola etiqueta de retorno rota invalida todo el clúster hreflang de esa página. Valida con el validador de hreflang de TechnicalSEO.com antes de fiarte del mensaje "sin errores" de Search Console, que va con días de retraso.

Para multitienda con dominios separados por idioma, el tema por defecto solo maneja los idiomas dentro de una misma tienda. El hreflang entre dominios implica modificar head.tpl para consultar ps_shop_url y construir URLs por tienda. Hreflang Tags Manager o nuestra suite SEO se encargan de ello; si vas a hacerlo por tu cuenta, cuenta con medio día de trabajo meticuloso para acertar con el mapeo bidireccional.

Datos estructurados / Schema.org

Los datos estructurados son lo que te consigue las valoraciones con estrellas, las insignias de precio y los indicadores de disponibilidad en los resultados de búsqueda. Los temas de PrestaShop incluyen un esquema Product básico, pero suele estar incompleto, y un esquema incompleto es lo que Google marca como señal de calidad en tu contra.

Esquema Product

El mínimo de Google para un resultado enriquecido: name, image, price, priceCurrency, availability. Si falta cualquiera de ellos, el resultado enriquecido no aparece sin avisar. Añade sku, brand y aggregateRating siempre que dispongas de ellos.

El esquema reside en distintos archivos según el tema: los temas clásicos usan templates/catalog/product.tpl o un parcial como _partials/microdata/product-jsonld.tpl; Hummingbird (PS 8+/9) lo mantiene en templates/catalog/_partials/product-details.tpl. Si heredas un tema personalizado, busca con grep application/ld+json en las plantillas y lee lo que realmente se está generando.

BreadcrumbList y Organization

El módulo de migas de pan de PrestaShop debería emitir el JSON-LD de BreadcrumbList automáticamente; confírmalo con la Prueba de resultados enriquecidos. El esquema Organization va en todo el sitio mediante un hook displayHeader: nombre del negocio, URL del logotipo, datos de contacto y perfiles sociales. Cinco minutos de trabajo, visibles en los resultados de búsqueda para cada consulta sobre tu marca.

Esquema FAQ y JSON-LD personalizado

Las páginas CMS con contenido de preguntas y respuestas pueden usar el esquema FAQPage, pero Google ya no muestra resultados enriquecidos de FAQ para la mayoría de los sitios, así que no cuentes con un fragmento ampliado. Para todo lo que tu tema no cubra, inyecta JSON-LD mediante displayHeader: detecta el controlador, construye el array del esquema en PHP y genéralo con json_encode() dentro de una etiqueta <script type="application/ld+json">. Si lo estás escribiendo como módulo, nuestra guía de hooks explica dónde encaja displayHeader y cómo mantener el módulo a salvo en las actualizaciones.

Para tiendas que necesitan esquema Product, Offer, Breadcrumb, Organization y FAQ sin tocar las plantillas del tema, Automatic SEO Schema Rich Snippets es el módulo que mantenemos exactamente para esto. Lectura de fondo: Fragmentos enriquecidos de Google para PrestaShop y Marcado Schema para PrestaShop.

Valida siempre con la Prueba de resultados enriquecidos de Google. La ausencia de propiedades obligatorias del esquema puede impedir que las páginas afectadas cumplan los requisitos para aparecer en los resultados enriquecidos de Google.

Sitemap XML

PrestaShop incluye el módulo Google Sitemap (gsitemap). Configúralo en Módulos → Administrador de módulos. Incluye productos, categorías y páginas CMS. Omite los proveedores salvo que tengan un papel real de cara al cliente. El módulo se divide en varios archivos para los catálogos grandes y escribe sitemap.xml en la raíz.

Configura un cron diario que llame a modules/gsitemap/gsitemap-cron.php con su clave segura. Que el sitemap se quede desactualizado es una de las formas silenciosas en que se degrada la indexación. Envíalo a Google Search Console y vigila el informe de cobertura. En multitienda, cada tienda genera su propio sitemap en su propio dominio automáticamente.

Las tiendas grandes se quedan pequeñas para gsitemap rápido. En cuanto necesites alternancias de idioma, entidades excluidas o una regeneración que no bloquee la base de datos, querrás Advanced SEO Sitemap Builder: el módulo que construimos tras demasiadas tiendas de clientes que agotaban el tiempo generando sitemaps por cron. La estrategia más amplia está en La guía completa de los sitemaps XML para el SEO de PrestaShop.

Un sitemap es una sugerencia, no una garantía. Incluye en él solo URLs canónicas e indexables, URLs que de verdad quieras posicionar. Nada de productos deshabilitados, ni páginas filtradas, ni URLs de la cesta o del proceso de compra. Hemos visto sitemaps con 80.000 entradas donde 60.000 eran navegación por facetas. Google lo interpreta como una tienda de baja calidad.

Robots.txt

Genéralo desde Parámetros de la tienda → Tráfico y SEO → Generación del archivo robots. El valor por defecto bloquea los directorios de administración pero pasa por alto los devoradores de presupuesto de rastreo. Añade esto:

# Bloquear el flujo de compra (sin valor SEO)
Disallow: /cart
Disallow: /order
Disallow: /my-account
Disallow: /search

# Bloquear duplicados filtrados/ordenados (devoradores de presupuesto de rastreo)
Disallow: /*?order=
Disallow: /*?q=
Disallow: /*&order=
Disallow: /*&q=

Sitemap: https://your-domain.com/sitemap.xml

Bloquear los parámetros de filtro impide que Google rastree las páginas duplicadas combinatorias y libera el presupuesto de rastreo para los productos y categorías reales. En una tienda con 50 categorías y navegación por facetas, esto por sí solo puede sacar decenas de miles de URLs inútiles de la cola de rastreo.

robots.txt bloquea el rastreo, no la indexación. Si algo externo enlaza a una URL bloqueada, Google aún puede indexarla sin rastrearla. Para una eliminación real del índice, usa etiquetas meta noindex o cabeceras X-Robots-Tag. Hemos tenido que explicar esto a clientes que bloquearon URLs en robots.txt y estaban furiosos porque seguían apareciendo en Google.

Como robots.txt se solapa con .htaccess y las cabeceras del servidor, repasa la guía de fortalecimiento de la seguridad de PrestaShop antes de añadir reglas generalistas a producción. Una sola errata en una línea Disallow: ha sacado sitios enteros del índice.

SEO de imágenes

Las imágenes de producto traen tráfico real a través de Google Imágenes, y en catálogos muy visuales (moda, hogar, joyería) eso puede ser entre el 15 y el 25% del total orgánico. PrestaShop genera automáticamente las etiquetas alt a partir del nombre del producto y reescribe los nombres de archivo a partir de link_rewrite. Ajusta la plantilla de alt en Parámetros de la tienda → Tráfico y SEO: añadir la categoría o la marca al patrón por defecto es la victoria SEO más fácil del back office.

Formatos modernos: PS 8+ admite WebP, PS 9 añade AVIF. Actívalos en Diseño → Configuración de imágenes, calidad de 80 a 85, y regenera las miniaturas. Carga diferida: los temas modernos añaden loading="lazy" por debajo del pliegue; Automatic SEO Images Lazy Tags es útil cuando la cobertura del tema es desigual. Nunca apliques carga diferida a la imagen principal del producto. Ese es tu elemento LCP, y diferirlo hunde los Core Web Vitals. Sitemap de imágenes: el módulo gsitemap puede incluir imágenes para que Google las encuentre incluso si se cargan mediante JavaScript.

Para catálogos donde escribir el texto alt a mano no es realista, Automatic SEO Images Alt Tags mantiene los metadatos de las imágenes coherentes. La parte de rendimiento (compresión, carga diferida, LCP) está en Optimización de imágenes en PrestaShop.

Core Web Vitals

Los CWV son un factor de posicionamiento confirmado. PrestaShop tiene un puñado de patrones que los suspenden de forma predecible, y son los mismos patrones en cada tienda que auditamos.

CLS (cambio de diseño): objetivo por debajo de 0,1

Los sospechosos habituales: imágenes sin atributos width/height; fuentes web que provocan FOUT (se corrige con font-display: swap más preload); banners cargados por JS que empujan el contenido hacia abajo tras el primer pintado (define un min-height en CSS); barras de consentimiento de cookies inyectadas en el flujo del documento en lugar de superpuestas con posicionamiento fijo.

LCP (mayor elemento de contenido pintado): objetivo por debajo de 2,5s

En las páginas de producto, el LCP es casi siempre la imagen principal del producto. Comprime de forma agresiva, sirve WebP o AVIF, y precárgala con <link rel="preload" as="image" fetchpriority="high">. Nunca le apliques carga diferida. Si el TTFB supera 1,5s, ningún truco de frontend te salvará. El cuello de botella es el servidor. Consulta nuestra guía de rendimiento y Performance Revolution.

INP (interacción hasta el siguiente pintado): objetivo por debajo de 200ms

Cada módulo que engancha displayHeader o displayFooter incluye JS que pelea por el hilo principal. Los scripts de terceros (analítica, widgets de chat, píxeles publicitarios) deberían cargarse con defer/async o a través de un gestor de etiquetas. Si el INP de campo es malo pero el INP de laboratorio está bien en PageSpeed Insights, la causa son los scripts de terceros que se disparan con las interacciones reales de los usuarios. Lo vemos constantemente en tiendas con cinco widgets de chat distintos instalados.

Velocidad de página para el SEO

El tratamiento completo del rendimiento está en nuestra guía de optimización del rendimiento. Para el SEO en concreto, hay tres cosas que importan más.

CCC (combinar, comprimir, cachear)

Activa las tres en Parámetros avanzados → Rendimiento. CCC reduce las peticiones HTTP de 20–40 a 3–5 para CSS y JS, lo que normalmente quita de 1 a 2 segundos del primer pintado. Salvedad: los módulos que inyectan etiquetas <link> en bruto mediante displayHeader eluden CCC por completo. Si CCC no te está ayudando en tu tienda, audita primero esos módulos.

Carga de fuentes

Aloja las fuentes en tu propio servidor (elimina la búsqueda DNS a fonts.googleapis.com), font-display: swap, precarga la fuente principal del cuerpo con <link rel="preload" as="font" type="font/woff2" crossorigin>, y haz un subconjunto para descartar los rangos de caracteres no usados. Una tienda PrestaShop típica carga de 4 a 8 grosores de una sola Google Font. La mayoría necesitan 2.

Estrategia de JS de los módulos

Los módulos deberían registrar el JS con 'attributes' => 'defer' en sus llamadas a registerJavascript(). El JS diferido se queda fuera del bundle de CCC por diseño pero no bloquea el renderizado. Si un módulo usa la posición bottom sin defer, eso es una señal de alerta, abre el archivo y añádelo, o repórtalo al desarrollador.

Enlazado interno

Tu árbol de categorías es tu arquitectura de enlazado interno. Cada página de categoría es una página potencial para posicionar un grupo de palabras clave. Para la automatización a través de productos, categorías, CMS y contenido de blog, Automatic Internal SEO Linker es el módulo que construimos para este problema exacto; la estrategia que hay detrás está en Enlazado interno para comercio electrónico.

Jerarquía de categorías

Estructura las categorías para que coincidan con la intención de búsqueda: "Zapatos" para el término principal, "Zapatillas de running para hombre" para la cola larga. Una categoría plana con 1.000 productos desperdicia la oportunidad de posicionar para decenas de términos específicos. El árbol de categorías de PrestaShop construye la jerarquía de enlazado automáticamente a través de las migas de pan y la navegación, diseña el árbol y consigue el enlazado gratis.

Migas de pan

Migas de pan en cada tipo de página. Cuando un producto pertenece a varias categorías, PrestaShop construye la miga de pan a partir de la categoría por defecto: así que fija la categoría por defecto de cada producto a la categoría relevante más específica. Hemos visto migas "Zapatos → Producto" en tiendas que deberían haber sido "Zapatos → Hombre → Running → Trail → Producto". Cinco veces el enlazado interno, el mismo esfuerzo.

Venta cruzada

Los accesorios y los productos relacionados crean enlaces internos de producto a producto, distribuyen la autoridad de enlace y elevan el AOV. Configúralo en Catálogo → Productos → Productos asociados. Y no dejes que las páginas CMS queden huérfanas. Guías de tallas, políticas de envío, instrucciones de cuidado, enlázalas desde las descripciones de los productos relevantes, no solo desde el pie de página.

Control de la indexación

No toda URL merece estar en el índice de Google. Dejar que Google indexe miles de URLs filtradas diluye el presupuesto de rastreo y entrena al algoritmo para verte como una tienda de baja señal.

Navegación por facetas

Una categoría con 5 colores, 8 tallas y 4 rangos de precio genera 160 URLs filtradas. Multiplícalo por 100 categorías y tienes 16.000 páginas casi duplicadas. Defensa de tres capas:

  • Bloquea los parámetros de filtro en robots.txt cuando el objetivo sea reducir el rastreo y Google no necesite leer sus etiquetas noindex.
  • Añade noindex a las páginas filtradas que deban quedar fuera del índice y permite el rastreo para que Google pueda leerlo.
  • Canonicaliza las páginas filtradas a la categoría base (consolida las señales de posicionamiento en la página que debe posicionar).

Excepción: las combinaciones de filtros que coinciden con consultas de búsqueda reales ("carteras de cuero negras", "zapatillas de running talla 10") deberían indexarse con metadatos únicos. Elige a mano las combinaciones de alto volumen y trátalas como páginas de aterrizaje independientes. Para los demás filtros, bloquea el rastreo o usa noindex permitiendo el rastreo, según el objetivo.

Estrategia de paginación

  • Canonicals autorreferenciales en cada página paginada.
  • Noindex en las páginas profundas. Las páginas 4 en adelante rara vez ganan posicionamiento. Mantenlas en follow para que Google siga descubriendo los productos enlazados.
  • Más productos por página. 48 en lugar de 12 reduce una categoría paginada de 17 páginas a 5, concentrando la autoridad de enlace en menos URLs.

Los errores que vemos en casi cada auditoría

Página de inicio duplicada

Página de inicio accesible en /, /index.php, /en/, /en/index.php. Redirige index.php a la raíz:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\\ /index\\.php\\ HTTP/
RewriteRule ^index\\.php$ / [R=301,L]

Normalización de WWW y HTTPS

Elige www o sin www. Elige HTTPS. Redirige todo lo demás con 301 a la versión canónica en un solo salto. El ajuste "Activar SSL" de PrestaShop solo afecta a la generación de enlaces, no redirige el tráfico HTTP. Tienes que añadir redirecciones a nivel de servidor en .htaccess. El orden importa: fuerza HTTPS primero, después normaliza www. Prueba con curl -I -L, cada salto de más cuesta latencia y sangra autoridad de enlace.

El resto de la lista

  • Duplicados de la página 1 de la categoría. Tanto /shoes/ como /shoes/?page=1 devuelven 200. Redirige con 301 ?page=1 a la URL base.
  • Descripciones de proveedor copiadas. Si las importaste tú, también lo hicieron 200 competidores. Escribe descripciones únicas al menos para el 20% superior por ingresos. El resto puede esperar.
  • Categorías vacías. Las categorías activas sin ningún producto son contenido pobre. Una ps_category con COUNT sobre ps_category_product, localiza las vacías, y ponles noindex o elimínalas.
  • Títulos meta ausentes. Consulta ps_product_lang por meta_title vacío, esos productos funcionan con el nombre del producto pelado como su etiqueta de título.

Si al trabajar en esta lista de comprobación afloran bucles de redirección, 404 misteriosos o pantallas en blanco, pasa a la guía de resolución de problemas de PrestaShop antes de enviar más cambios. Los arreglos de SEO en una tienda rota son trabajo desperdiciado.

La lista de comprobación de auditoría que realmente usamos

Trimestralmente, o después de cualquier cambio importante en la tienda. Las casillas que no se marquen, corrígelas en orden, primero la base técnica, después el on-page, después el esquema, después la rastreabilidad.

Base técnica

  • URLs amigables activadas, sin URLs index.php?id_product= en Google.
  • SSL activado y forzado. Toda petición HTTP hace un 301 a HTTPS.
  • Normalización de WWW, redirección de un solo salto, sin cadenas.
  • Robots.txt bloquea administración, cesta, proceso de compra, búsqueda y parámetros de filtro.
  • Sitemap XML generado, actualizado y enviado a Search Console.

On-page

  • Títulos meta únicos en cada producto y categoría, por debajo de 60 caracteres.
  • Descripciones meta únicas o intencionadamente en blanco, sin duplicados de texto repetido.
  • Un H1 por página, que coincida con el tema de la página.
  • Todas las imágenes de producto tienen texto alt descriptivo.
  • Etiquetas canonical presentes en cada página, correctas bajo paginación.
  • Hreflang correcto si es multilingüe: bidireccional, con x-default presente.

Datos estructurados

  • El esquema Product valida en la Prueba de resultados enriquecidos con name, image, price, availability.
  • Esquema BreadcrumbList en las páginas de producto y categoría.
  • Esquema Organization en todo el sitio.

Rastreabilidad

  • Informe de cobertura de Search Console, sin errores inesperados ni páginas excluidas.
  • URLs filtradas que no se disparan en el índice de Google.
  • Sin categorías vacías indexadas.
  • Sin soft 404 (productos agotados que devuelven 200 con contenido vacío).

Rendimiento

  • Core Web Vitals aprobando en los datos de campo (Search Console → Core Web Vitals).
  • Sin errores de usabilidad móvil.
  • Páginas de producto por debajo de 3s de tiempo de carga. Guía de rendimiento.

Herramientas que usamos

Google Search Console para la indexación, los CWV y el rendimiento de búsqueda. Screaming Frog para el rastreo (gratis hasta 500 URLs, de pago para cualquier cosa mayor). PageSpeed Insights para los CWV de laboratorio y de campo. Prueba de resultados enriquecidos para el esquema. Ahrefs Webmaster Tools para una auditoría técnica gratuita más los backlinks.

El SEO no es de configurar y olvidar. Las actualizaciones del tema rompen el esquema. Los módulos nuevos añaden cadenas de redirección. Las importaciones masivas sobrescriben los títulos meta. Un repaso trimestral de 30 minutos a esta lista detecta los problemas antes de que cuesten posicionamiento, y todavía no hemos auditado una tienda donde haya llevado más que eso.

Lecturas relacionadas

Nuestros módulos SEO

Artículos de SEO para PrestaShop

Guías técnicas

Preguntas relacionadas

Cargando...
Volver arriba