Características

  • Archivos JSON estáticos por variante de listado (tienda, idioma, moneda y grupo de clientes): cada producto con sus categorías, marca, características, atributos, precio, stock y ventas, y las tarjetas de producto ya renderizadas por tu theme
  • Filtros para todo lo que hay en el catálogo: categorías, marcas, cada característica, cada atributo (con muestras de color), rango de precio, en stock, en oferta, novedades y estado, que se encuentran solos, sin configurarlos uno a uno
  • Recuentos que siguen a los demás filtros: un grupo cuenta como si no estuviera elegido, así el cliente nunca llega a un resultado vacío
  • Ninguna petición a la tienda mientras el cliente filtra: el navegador solo lee archivos estáticos, que pueden estar en una CDN, y la base de datos se queda tranquila
  • Los archivos se regeneran solos desde los hooks de PrestaShop cuando cambia un producto, su stock, una regla de precio, una característica, un atributo, una categoría, una marca, una moneda o un grupo; sin tareas cron
  • Funciona con cualquier theme porque las tarjetas salen de la plantilla del propio theme; el listado que imprime el servidor no se toca, para los buscadores y para quien no tiene JavaScript
  • Tres disposiciones (junto a los productos, una barra encima, un botón flotante con panel lateral; en móvil siempre panel lateral), filtrado al instante o con un botón «Ver productos», números de página, botón «Cargar más» o scroll infinito, filtros activos como botones y una URL que se puede compartir o recargar
  • Pensado para ser accesible: se maneja con teclado y lectores de pantalla, los filtros anuncian el número de resultados, el panel lateral retiene el foco hasta cerrarse y cada zona de pulsación es lo bastante grande para un dedo
  • Una página de administración en cuatro pestañas: ordena los filtros arrastrando, ponles nombre en cada idioma, elige cómo se ven (lista, botones, muestras de color, desplegable, deslizador de precio), une varios atributos o características en un filtro, elige los grupos de clientes y reconstruye los archivos con una barra de progreso que muestra cada archivo; un script de línea de comandos para catálogos grandes

Una búsqueda por facetas suele pedirle al servidor cada clic: una consulta pesada por cada cambio de filtro, lenta en catálogos grandes e imposible de poner en caché. Instant Filters cambia dónde se hace el trabajo. La tienda escribe un conjunto de archivos JSON con todo el catálogo y los filtros que puede ofrecer, y el navegador del cliente los lee una vez y después filtra, cuenta, ordena y pagina por su cuenta.

Qué escribe la tienda

Para cada tienda, idioma, moneda y grupo de clientes que prepares, el módulo mantiene un index.json con un registro compacto por producto (categorías, marca, características, atributos, precio, descuento, stock, fecha, ventas y posición) y los nombres que muestra cada filtro, además de archivos cards-N.json con las tarjetas de producto renderizadas por tu theme activo, de modo que el listado filtrado es idéntico al normal. Los precios son los que paga ese visitante, con descuentos, reducciones de grupo e impuestos como los muestra la tienda.

Cómo se mantiene al día

Guardar o borrar un producto, cambiar su stock, añadir una regla de precio, editar una característica, un atributo, una categoría, una marca, una moneda o un grupo deja el cambio en una cola pequeña. El navegador del siguiente visitante pide a una dirección del módulo que lo procese cuando la página ya se ha mostrado, así nadie espera y no hay que configurar ningún cron. Para una importación grande o un despliegue, ejecuta php modules/ecomaddonsinstantfilters/cli/rebuild.php o pulsa el botón de reconstruir.

En la tienda

El panel de filtros aparece en las páginas de categoría, marca, proveedor, novedades, más vendidos y bajadas de precio: junto a los productos (la columna izquierda del theme), como una barra encima o como un botón flotante que abre un panel lateral, como prefieras; en móvil siempre es un panel lateral. El servidor sigue imprimiendo el listado normal: los buscadores, y quien no tenga JavaScript, lo ven como siempre.

Conviene saber

Está pensado para catálogos de hasta unos diez mil productos por conjunto de archivos. Más allá, los archivos crecen demasiado para el móvil.
Desactiva la búsqueda por facetas de PrestaShop (la página de ajustes tiene un botón) o los clientes verán dos paneles.
Cada grupo de clientes con precios propios necesita sus archivos: elígelos en los ajustes.
En Apache, el módulo añade un .htaccess en img/ecomfilters/ que deja pasar solo los archivos JSON; en nginx permite img/ecomfilters/*.json en tu configuración.

Historial de versiones

  1. Cargando…

Opiniones

Cargando…