Documentación Búsqueda Sin Resultados: Página de Rescate y Alertas
Instalar, configurar y usar dfzerosearch 1.3.0: página de rescate, referencias similares, reglas exactas, contiene y comodín (M91650*), importación CSV, alertas «avísame» automáticas e ingresos rescatados.
Presentación
El módulo Búsqueda Sin Resultados (dfzerosearch) toma el relevo cuando una búsqueda de su tienda no encuentra nada. En lugar de una página vacía, el visitante ve una página de rescate: el destino que usted eligió para esa consulta, los productos cuya referencia se parece a la escrita, la búsqueda corregida, una búsqueda más amplia, los más vendidos de la categoría deducida y un formulario «Avísame».
En el back-office se cuenta cada búsqueda perdida. Usted la asocia a un producto, una categoría, otra búsqueda o una URL, con una regla exacta, «contiene» o comodín. Después el módulo mide lo que aportan esos rescates: tasa de rescate, pedidos e ingresos sin IVA.
Novedades de la 1.3.0: bloque Referencias similares (una búsqueda de M91650-0005 muestra M91650-0001 y M91650-0002) y reglas comodín (M91650* cubre toda una familia de referencias con una sola regla).
Instalación y actualización
Primera instalación
- Abra Módulos > Gestor de módulos y haga clic en Subir un módulo.
- Seleccione el archivo
dfzerosearch.zip. - El módulo crea sus tablas, su menú de administración y su configuración por defecto. Queda activo de inmediato.
- Copie la URL de la tarea programada que aparece en la página de configuración y prográmela cada hora (ver más abajo).
Actualización desde una versión anterior
Suba el nuevo ZIP encima del anterior, sin desinstalar. PrestaShop ejecuta los scripts de actualización: columnas nuevas, ajustes nuevos con su valor por defecto y vaciado de la caché del módulo. Se conservan sus consultas perdidas, reglas, suscriptores y estadísticas.
No desinstale el módulo para actualizarlo: la desinstalación borra sus tablas y, con ellas, todo el historial.
Configuración
La página Configurar empieza con accesos directos a las tres pantallas del módulo, seguidos de tres paneles de ajustes y del panel de la tarea programada.
Página de rescate
- Activar el módulo: activa o suspende la detección y la página de rescate.
- Corrección de erratas («Quizás quiso decir…»): corrige las erratas palabra por palabra contra el índice de búsqueda y muestra los productos correspondientes.
- Referencias similares: para una referencia que no está en el catálogo, muestra los productos cuya referencia empieza igual. Guiones, espacios y mayúsculas se ignoran; se incluyen las referencias de combinaciones.
- Coincidencia parcial: cuando una consulta larga falla por una palabra («botas cuero talla 45»), muestra los resultados de la consulta más corta más cercana.
- Más vendidos de la categoría deducida: compara la consulta con los nombres de categorías, subcategorías incluidas.
- Más vendidos de la tienda como último recurso: solo se muestran si ningún otro bloque encontró nada. Si la tienda aún no tiene ventas, se usan las novedades.
- Formulario «Avísame»: el visitante deja su email para que le avisen cuando su búsqueda encuentre un producto.
- Usar las miniaturas de producto del tema: los productos se ven igual que en sus páginas de categoría (añadir al carrito, vista rápida, etiquetas). Desactivado, el módulo usa sus tarjetas compactas.
- Solo productos en stock: oculta los productos agotados en todos los bloques.
- Mensaje personalizado (por idioma): texto mostrado arriba de la página de rescate, por ejemplo un teléfono o un enlace a pedidos especiales.
%query%se sustituye por las palabras buscadas. - Búsquedas populares: etiquetas clicables con búsquedas que funcionan. Escriba su propia lista por idioma o déjela vacía para usar las búsquedas frecuentes que dan resultados.
- Productos por bloque: de 1 a 24 (8 por defecto).
Seguimiento y datos
- Longitud mínima de la consulta: por debajo, la búsqueda no se registra ni se rescata (2 por defecto).
- Contar los resultados aproximados como perdidos: la búsqueda difusa nativa de PrestaShop suele devolver productos sin relación para una palabra desconocida. Cuando una búsqueda solo encuentra ese tipo de resultado, se cuenta como perdida y el bloque de rescate aparece encima.
- Ignorar robots y rastreadores: no se registran las búsquedas de buscadores, herramientas SEO ni scripts.
- Ventana de atribución (días) (7 por defecto): un pedido realizado en ese plazo tras un rescate se atribuye a la consulta y al bloque que trajeron de vuelta al visitante (último contacto).
- Guardar en caché los resultados de rescate: conserva el trabajo de búsqueda 15 minutos por consulta. Precios y stock siguen en directo. La caché se vacía en cuanto cambia un ajuste o una regla.
- Conservación (días) (180 por defecto): la tarea programada borra las consultas perdidas que no se han vuelto a ver en ese plazo y las suscripciones ya avisadas. 0 lo conserva todo. Un botón permite purgar al momento.
Automatización
- Emails «avísame» automáticos: los suscriptores reciben el aviso en cuanto su consulta obtiene una regla activa o la búsqueda vuelve a encontrar productos.
- Informe semanal: cada 7 días, búsquedas perdidas, tasa de rescate y principales consultas perdidas, enviados por email.
- Destinatario del informe: vacío, se usa el email de la tienda.
Tarea programada
El panel Tarea programada (cron) muestra una URL protegida por token. Llámela cada hora desde cPanel, Plesk o cualquier servicio de cron, por ejemplo:
0 * * * * curl -s "https://www.su-tienda.com/module/dfzerosearch/cron?token=..." > /dev/null
Envía los emails «avísame» automáticos, aplica la conservación y envía el informe semanal. El panel indica la fecha de la última ejecución, el botón Ejecutar ahora lanza la tarea a mano y Generar un nuevo token sustituye la URL si se ha filtrado. En multitienda, programe una tarea por tienda con la URL mostrada en el contexto de cada tienda.
Si la tarea no se ha ejecutado en 48 horas, aparece un aviso en el panel: los emails automáticos y el informe semanal quedan en espera hasta que vuelva a ejecutarse.
La página de rescate
Cuando la cuadrícula de resultados está vacía, un script carga la página de rescate por AJAX. Las búsquedas que sí encuentran productos no se ralentizan. Los bloques aparecen en este orden, sin productos repetidos entre bloques:
- Su regla: si una regla activa coincide con la consulta, su destino se destaca. En modo redirección, el visitante llega directamente al destino. Un sinónimo muestra además sus productos.
- Referencias similares: productos de la misma familia de referencia.
- «Quizás quiso decir…»: la consulta corregida y sus productos, con un enlace a la búsqueda corregida. Este bloque solo aparece si los anteriores no mostraron nada.
- Coincidencia parcial: resultados de la consulta acortada, solo si aún no se ha encontrado nada.
- Más vendidos de la categoría deducida.
- Más vendidos de la tienda: solo como último recurso.
El mensaje personalizado aparece encima de los bloques; las búsquedas populares y el formulario «Avísame», debajo.
Referencias similares
Muchos clientes buscan un producto por su referencia exacta. Cuando esa referencia no existe en el catálogo, el módulo propone los productos de la misma familia.
- El módulo localiza en la consulta la palabra que parece una referencia: al menos 5 caracteres, de ellos al menos 2 cifras.
- La compara con las referencias de productos y combinaciones, ignorando guiones, espacios, puntos y mayúsculas.
M91650-0005,m91650 0005yM916500005se tratan igual. - Solo se conservan los productos que comparten un inicio de referencia suficientemente largo (al menos 5 caracteres y el 60 % de la referencia buscada). Los más cercanos aparecen primero.
- Ejemplo: una búsqueda de
M91650-0005muestraM91650-0001yM91650-0002, pero noM91651-0003.
La corrección de erratas nunca modifica una palabra con al menos 2 cifras: una referencia no se «corrige» en otra.
Reglas: asociaciones y sinónimos
La pantalla Asociaciones y sinónimos lista sus reglas. Para crear una, haga clic en Añadir una asociación o use la acción Asociar de una consulta perdida, que rellena el formulario.
Tipos de coincidencia
- Exacta: la consulta debe ser idéntica a la regla. Mayúsculas, acentos y espacios de más se ignoran.
- Contiene: la regla debe aparecer como palabra o secuencia de palabras en la consulta. Guiones, barras, puntos y otros separadores cuentan como espacios: la regla
m91651se aplica aM91651-0003. - Comodín:
*sustituye cualquier secuencia de caracteres y?un solo carácter.M91650*cubreM91650-0001,M91650-0007om916500009, pero noM91659-0001. Toda regla que contenga*o?se guarda automáticamente como comodín.
Una regla comodín necesita al menos 3 caracteres además de los comodines, y ** se rechaza. Escriba M91650* en lugar de M91650-* si sus clientes también escriben la referencia sin guion.
Prioridades
Cuando varias reglas coinciden con una consulta, gana la más precisa: una regla exacta va antes que una comodín, que va antes que una «contiene». Con el mismo tipo, una regla de un idioma concreto va antes que una de «todos los idiomas», y después gana la regla más larga.
Destinos y modos
- Producto: búsqueda por nombre, referencia o ID en el formulario.
- Categoría.
- Sinónimo (otra búsqueda): otras palabras que sí dan resultados («sudadera» para «jersey»). Los productos de esa búsqueda se muestran en la página de rescate.
- URL personalizada: URL absoluta o ruta que empieza por una barra.
Cada regla funciona en modo Sugerencia (destino destacado en la página de rescate) o Redirección (el visitante llega directamente al destino). Una regla puede aplicarse a un idioma concreto o a todos.
Importación y exportación CSV
El panel Importar / exportar (CSV) de la pantalla de reglas importa hasta 5.000 líneas y exporta todas sus reglas. Separador ; o ,, cabecera opcional. Columnas:
query ; match ; language ; type ; target ; mode ; active
M91650* ; wildcard ; all ; category ; 12 ; redirect ; 1
jersey ; exact ; es ; search ; sudadera ; suggest ; 1
M91651 ; contains ; all ; product ; M91651-0003 ; suggest ; 1
- match:
exact,containsowildcard(exact por defecto; comodín detectado automáticamente si la regla contiene*o?). - language: código ISO, o vacío,
*oallpara todos los idiomas. - type:
product,category,searchourl. - target: ID o referencia de producto, ID de categoría, palabras que buscar o URL.
- mode:
suggestoredirect(suggest por defecto). active: 1 o 0 (1 por defecto).
Una regla existente con la misma consulta y el mismo idioma se actualiza. El informe de importación indica las líneas creadas, actualizadas y rechazadas con su número.
Alertas «Avísame»
El formulario de la página de rescate tiene una casilla de consentimiento desmarcada por defecto y un campo trampa contra robots. Para un cliente conectado, el email aparece ya rellenado. Las solicitudes se listan en la pantalla Solicitudes «avísame» con su estado.
Con la tarea programada y la opción Emails «avísame» automáticos, el suscriptor recibe el email dfzerosearch_alert en su idioma en cuanto su consulta obtiene una regla activa o la búsqueda vuelve a encontrar productos. También puede enviarlo a mano con la acción Avisar de una regla. Cada email incluye un enlace de baja.
Panel e ingresos rescatados
La pantalla Consultas perdidas muestra las cifras de los últimos 30 días: búsquedas perdidas, tasa de rescate, pedidos tras un rescate, ingresos rescatados sin IVA, nuevas suscripciones y emails pendientes. Un gráfico compara día a día las búsquedas perdidas y rescatadas; otro muestra los clics por bloque de rescate (regla, referencias similares, corrección, coincidencia parcial, categoría, más vendidos, búsquedas populares).
La lista de consultas perdidas se ordena por volumen. Cada línea ofrece Asociar, Ignorar / restaurar y, cuando se encontró una corrección, Crear un sinónimo a partir de esta corrección. La tabla Últimos pedidos tras un rescate indica la consulta y el bloque acreditados.
La atribución es al último contacto: el pedido se acredita al último rescate del mismo visitante dentro de la ventana de atribución configurada.
Informe semanal
Cada 7 días, la tarea programada envía el email dfzerosearch_digest: búsquedas perdidas, visitantes rescatados, tasa de rescate, pedidos e ingresos sin IVA tras un rescate, nuevas solicitudes «avísame» y consultas perdidas más frecuentes. Si no ha pasado nada en la semana, no se envía ningún email.
RGPD
- Consentimiento explícito: casilla desmarcada por defecto y texto de consentimiento claro.
- Módulo oficial RGPD: el módulo está registrado en
psgdpr. La exportación y la eliminación de los datos de un cliente incluyen sus solicitudes «avísame». - Baja: un enlace en cada email.
- Conservación: purga automática de consultas antiguas y suscripciones avisadas.
- Autoalojado: no se envía ningún dato a un servicio externo.
Compatibilidad e información técnica
- PrestaShop 8.0 a 9.x, multitienda.
- Interfaz y emails en inglés, francés, español, alemán e italiano.
- Hooks:
actionSearch,actionFrontControllerSetMedia,actionValidateOrder,registerGDPRConsent,actionDeleteGDPRCustomer,actionExportGDPRData. - Tablas:
dfzerosearch_query,dfzerosearch_mapping,dfzerosearch_alert,dfzerosearch_stat,dfzerosearch_session,dfzerosearch_conversion. - Menú
AdminDfZeroSearchen Módulos, con tres pantallas: consultas perdidas, asociaciones y sinónimos, solicitudes «avísame». - Controladores front:
rescue(página de rescate, JSON),cron(tarea programada, token) yunsubscribe. - Sin dependencias: sin Composer, JavaScript sin jQuery, sin servicio externo.
Solución de problemas
- La página de rescate no aparece: compruebe que el módulo está activado y que la búsqueda devuelve realmente cero resultados, y vacíe la caché de PrestaShop y del navegador. Con un tema muy personalizado, contáctenos indicando el nombre del tema.
- Una búsqueda muestra productos sin relación y no se cuenta como perdida: active Contar los resultados aproximados como perdidos.
- No aparecen referencias similares: la palabra buscada necesita al menos 5 caracteres con 2 cifras, y debe haber productos activos, visibles en la búsqueda, que compartan el inicio de esa referencia.
- Una regla comodín no se aplica: compruebe que está activa, en el idioma correcto, y que ninguna regla exacta tiene prioridad. Pruébela sin separador (
M91650*) si sus clientes escriben la referencia de varias formas. - No se propone ninguna corrección: la corrección solo sugiere palabras presentes en el índice; reconstruya el índice de búsqueda de PrestaShop si el catálogo ha cambiado mucho.
- Los emails automáticos o el informe no se envían: revise la fecha de la última ejecución de la tarea programada y la configuración de email de PrestaShop. El botón Avisar muestra un error explícito si el envío falla.
- El panel sigue vacío: revise la longitud mínima de la consulta y pruebe desde un navegador normal, ya que los robots se ignoran.