PS PrestaShop Intermedio

dfsearchconsole — Google Search Console para PrestaShop

Instalación, configuración OAuth de Google, sincronización cron y explotación de las oportunidades SEO del módulo dfsearchconsole.

Actualizado Versión del módulo 1.0.0

Presentación

dfsearchconsole sincroniza los datos de Google Search Console directamente en el back office de PrestaShop 8 y 9: top consultas por URL, CTR por página, posición media y, sobre todo, cuatro categorías de oportunidades SEO calculadas automáticamente con sugerencias de optimización contextuales.

El módulo añade 5 pestañas bajo Mejorar → Search Console: Cuadro de mando, Páginas, Consultas, Oportunidades y Ajustes. La comunicación con Google se realiza vía OAuth2 en solo lectura (ámbito webmasters.readonly), sin dependencia de Composer — únicamente cURL nativo.

Instalación

  1. Descarga el archivo ZIP del módulo desde tu cuenta de cliente DataFirefly.
  2. En el back office de PrestaShop: Módulos → Gestor de módulos → Subir un módulo.
  3. Selecciona el archivo ZIP y deja que la instalación termine.
  4. El módulo crea 4 tablas SQL (ps_dfgsc_sync, ps_dfgsc_page, ps_dfgsc_query, ps_dfgsc_opportunity) y registra sus 5 pestañas bajo el menú Mejorar.

Requisitos: PrestaShop 8.0 a 8.2 o 9.0, PHP 7.4 mínimo (8.1+ recomendado), extensión cURL activada y una propiedad verificada en Google Search Console.

Configuración OAuth en Google Cloud

El módulo se comunica con la API de Search Console mediante tus propias credenciales OAuth2. Crearlas es gratuito y lleva unos diez minutos.

1. Crear el proyecto y activar la API

  1. Ve a console.cloud.google.com y crea un proyecto (o reutiliza uno).
  2. En APIs y servicios → Biblioteca, busca Google Search Console API y actívala.

2. Configurar la pantalla de consentimiento

  1. Abre APIs y servicios → Pantalla de consentimiento OAuth.
  2. Tipo de usuario: Externo (o Interno si usas Google Workspace).
  3. Rellena el nombre de la aplicación, el email de soporte y tu dominio.
  4. Añade el ámbito https://www.googleapis.com/auth/webmasters.readonly.
  5. Mientras la aplicación no esté publicada, añade tu dirección de Google como usuario de prueba.

3. Crear el ID de cliente OAuth

  1. En APIs y servicios → Credenciales, haz clic en Crear credenciales → ID de cliente OAuth.
  2. Tipo de aplicación: Aplicación web.
  3. En URIs de redirección autorizados, pega la URL mostrada en la pantalla de Ajustes del módulo (de la forma https://tu-dominio.com/module/dfsearchconsole/oauth).
  4. Anota el Client ID y el Client Secret.

4. Conectar el módulo

  1. En PrestaShop, abre Mejorar → Search Console → Ajustes.
  2. Pega el Client ID y el Client Secret, luego guarda.
  3. Haz clic en Conectar con Google y autoriza el acceso.
  4. De vuelta en el back office, selecciona la propiedad Search Console a sincronizar en el desplegable.

El botón Probar conexión verifica que el token funciona y muestra cuántas propiedades son accesibles desde la cuenta conectada.

Sincronización

Sincronización manual

El botón Sincronizar ahora de la pantalla de Ajustes lanza inmediatamente una sincronización completa. Cuenta unos segundos para una tienda pequeña hasta 2-3 minutos para un sitio con miles de páginas indexadas.

Sincronización automática (cron)

La pantalla de Ajustes muestra una URL de cron protegida por un token aleatorio de 32 caracteres. Añádela a tu crontab para una sincronización diaria:

0 4 * * * curl -s "https://tu-dominio.com/module/dfsearchconsole/cron?token=TU_TOKEN" > /dev/null

Google Search Console aplica un retraso de unos 2 días en los datos. Por tanto el módulo sincroniza siempre la ventana que termina en hoy − 2 días. Una sincronización al día es suficiente.

Ventana de lookback

Por defecto el módulo recupera 90 días de datos más los 90 días anteriores para calcular los deltas. Esta ventana es configurable de 28 a 480 días en Ajustes. Cuanto mayor sea la ventana, más larga será la sincronización.

Cuadro de mando

El cuadro de mando ofrece una visión general: 4 tarjetas KPI (clics, impresiones, CTR, posición media) con las evoluciones respecto al periodo anterior, el top 10 de páginas, el top 15 de consultas y una vista previa de las oportunidades prioritarias.

Para la posición media, una bajada es una mejora (cuanto más baja la posición, mejor clasifica la página). El cuadro de mando muestra por tanto una flecha verde cuando la posición disminuye.

Páginas y Consultas

Pestaña Páginas

Lista paginada y ordenable de todas las URLs reportadas por Search Console, con clics, impresiones, CTR, posición y delta de clics. Un filtro permite acotar por tipo de página (producto, categoría, CMS, otro) o por texto. Al hacer clic en una URL se abre su vista de detalle: KPIs de la página con valores del periodo anterior, consultas que apuntan a esa URL, oportunidades asociadas y enlace directo para editar la entidad PrestaShop correspondiente.

Pestaña Consultas

Dos modos de visualización:

  • Vista agrupada — una línea por consulta, agregada entre todas las URLs. Ideal para identificar tus términos principales.
  • Vista detallada — una línea por par consulta × URL. Imprescindible para analizar la canibalización.

Las posiciones se muestran con código de color: verde (1-3), azul (4-10), amarillo (11-20, boosteables), gris (21+).

Oportunidades SEO

Tras cada sincronización, el módulo recalcula automáticamente cuatro categorías de oportunidades:

  • Top 11–20 boosteables (striking distance) — consultas posicionadas entre 11 y 20 (umbrales configurables) con un mínimo de impresiones. El módulo calcula la ganancia potencial de clics simulando un paso a la posición 5.
  • CTR por debajo de la media (top 10) — páginas en el top 10 cuyo CTR real está por debajo del 50 % del CTR esperado según la curva de referencia integrada (agregada de estudios de Advanced Web Ranking, Sistrix y Backlinko).
  • Canibalización — la misma consulta haciendo aparecer 2 o más URLs. El módulo lista las URLs competidoras.
  • Pérdida de clics — páginas que han perdido más del 25 % de clics respecto al periodo anterior.

Cada oportunidad muestra una puntuación de prioridad, las métricas asociadas y sugerencias de optimización adaptadas al tipo de página (ficha de producto, categoría o página CMS). El flujo Abierta / Hecha / Descartada permite seguir tu progreso. El botón Recalcular reconstruye todas las oportunidades a partir de los datos ya en base, sin volver a llamar a la API de Google.

Ajustes de umbrales

En Ajustes, tres umbrales pilotan la detección:

  • Impresiones mínimas (por defecto 50) — por debajo, el par consulta × URL es ignorado por los detectores.
  • Posición mín / máx striking distance (por defecto 11 / 20) — la ventana de posiciones considerada boosteables.

Para una tienda pequeña con poco tráfico, baja el umbral de impresiones a 20-30. Para un sitio grande, súbelo a 100+ para que solo aparezcan los trabajos significativos.

Solución de problemas

« Token expirado » o error 401

El refresh token se usa automáticamente cada hora. Si Google ha revocado el acceso (cambio de contraseña, inactividad prolongada, revocación manual), reconecta el módulo mediante el botón Conectar con Google de la pantalla de Ajustes.

Ningún sitio en el desplegable

La cuenta de Google conectada debe tener acceso a al menos una propiedad Search Console (propietario o usuario). Verifica en search.google.com/search-console con la misma cuenta.

Error « redirect_uri_mismatch » durante la conexión

La URI de redirección declarada en Google Cloud Console debe coincidir exactamente con la mostrada en la pantalla de Ajustes del módulo (protocolo https incluido, sin barra final extra).

Sincronización muy larga o timeout

La API pagina en lotes de 25.000 filas. Para sitios grandes: aumenta memory_limit a 512M, aumenta max_execution_time y prioriza el cron (que no tiene el límite de tiempo del navegador).

URLs no resueltas a entidades PrestaShop

El resolvedor trabaja sobre el link_rewrite (slug de URL amigable). Las URLs generadas por módulos de routing de terceros pueden quedar sin enlazar: aparecen con el tipo « other » pero siguen siendo plenamente analizadas.

Desinstalación

La desinstalación elimina las 4 tablas SQL, las pestañas de administración y todas las claves de configuración (incluidos los tokens OAuth). Recuerda revocar el acceso de la aplicación en los ajustes de seguridad de tu cuenta de Google si ya no usas el módulo.

¿Te ha resultado útil esta página?

¿Sigues atascado? Contacta con soporte