Caché de página estática en PrestaShop: el caso de JPresta Page Cache en velasdeolor.es

Cuando una tienda online tarda en cargar, el cliente no espera: vuelve a Google y entra en la de la competencia. En PrestaShop este problema es muy habitual, porque cada página de producto o de categoría se genera al momento: consultas a la base de datos, cálculo de precios e impuestos, módulos que se ejecutan uno tras otro… Todo eso ocurre antes de que el navegador reciba el primer byte. En este artículo explicamos qué es una caché de página estática, por qué es una de las mejoras de rendimiento más rentables en PrestaShop y cómo la hemos aplicado con JPresta Page Cache en la tienda velasdeolor.es.

Por qué la caché importa tanto en una tienda PrestaShop

La velocidad influye en tres aspectos del negocio:

  • Conversión: cada segundo de espera aumenta los abandonos, sobre todo en móvil.
  • Posicionamiento SEO: Google tiene en cuenta la experiencia de página (Core Web Vitals) y un servidor lento empeora directamente el LCP (Largest Contentful Paint).
  • Rastreo: si el servidor responde rápido, Googlebot puede rastrear más URLs en el mismo tiempo, algo importante en catálogos con cientos o miles de productos.

Hay una métrica que resume bien el trabajo del servidor: el TTFB (Time To First Byte), es decir, el tiempo que pasa desde que el navegador pide la página hasta que recibe el primer byte de respuesta. En una tienda PrestaShop sin optimizar es fácil encontrar TTFB de uno o dos segundos. Y ninguna optimización posterior de imágenes, CSS o JavaScript puede recuperar ese tiempo perdido.

Qué es una caché de página estática en PrestaShop

La idea es sencilla: la primera vez que alguien visita una página, PrestaShop la genera de forma normal y el módulo guarda el HTML resultante. Las siguientes visitas reciben directamente esa copia ya preparada, sin volver a ejecutar consultas ni lógica de negocio. Servir un HTML ya generado cuesta unos pocos milisegundos, frente a los cientos de milisegundos (o segundos) que puede costar generarlo.

Es importante no confundirla con otras cachés que PrestaShop ya incluye (la caché de plantillas Smarty, la de consultas o la de CCC para CSS y JS). Esas cachés aceleran partes del proceso, pero la página se sigue construyendo en cada visita. La caché de página completa se salta prácticamente todo ese proceso.

Cómo funciona JPresta Page Cache

JPresta Page Cache (en su versión Ultimate) es uno de los módulos de caché más veteranos del ecosistema PrestaShop. Según su fabricante, está instalado en más de 5.000 tiendas y consigue una reducción media del TTFB en torno al 80%. Estas son las claves que lo hacen adecuado para una tienda real:

  • Gestión del contexto: genera versiones distintas de la caché según el idioma, la moneda, el tipo de dispositivo, el grupo de clientes o los impuestos aplicables, de modo que cada visitante ve los precios y contenidos que le corresponden.
  • Contenido dinámico: los bloques que cambian para cada usuario (carrito, cuenta de cliente, productos vistos…) se recargan por separado mediante AJAX, así que la página puede servirse desde la caché sin mostrar datos de otro usuario.
  • Actualización automática: cuando se modifica un producto, un precio o el stock, el módulo borra solo las páginas afectadas para que no se muestre información desactualizada.
  • Precarga (cache warmer): un servicio opcional recorre la tienda y genera la caché antes de que llegue el visitante, para que nadie reciba una página «fría».
  • Compatibilidad: no necesita extensiones especiales de PHP ni un servidor dedicado; funciona también en alojamientos compartidos.

Caso real: velasdeolor.es

velasdeolor.es es una tienda online de fragancias para el hogar con un catálogo amplio de marcas y referencias: muchas categorías, fichas de producto y filtros. Es el tipo de tienda en la que PrestaShop tiene que trabajar más para generar cada página.

Lo mejor de este caso es que no necesitamos pruebas de laboratorio: el propio módulo registra el TTFB real que mide el navegador de cada visitante y lo separa según cómo se ha servido la página. Hay varios niveles: sin caché (PrestaShop genera la página desde cero), caché del servidor (el HTML guardado lo sirve PHP), caché estática (el servidor web entrega el archivo sin pasar por PHP) y caché del navegador (el propio navegador reutiliza la página). Estos son los datos de dos semanas de tráfico real:

Tipo de páginaSin cachéCaché del servidorCaché estáticaCaché del navegador
Portada500 ms396 ms93 ms48 ms
Categorías698 ms235 ms94 ms44 ms
Productos459 ms297 ms108 ms75 ms
Todas las páginas532 ms289 ms98 ms54 ms
TTFB real medido en el navegador de los visitantes de velasdeolor.es (media de los valores diarios del 9 al 22 de septiembre de 2026, sin contar el 17 de septiembre, día con un pico de tráfico anómalo).

Las cifras hablan solas. Una página de categoría que PrestaShop tiene que generar tarda de media unos 700 ms en empezar a llegar al visitante (filtros, listados y precios son costosos de calcular). Servida desde la caché estática baja a unos 94 ms, más de 7 veces más rápida. En el conjunto de la tienda, el TTFB pasa de más de medio segundo sin caché a menos de 100 ms con la caché estática, y a unos 50 ms cuando responde directamente el navegador.

Actualmente, cerca del 69% de las visitas ya recibe alguna versión cacheada de la página. El margen de mejora está en subir ese porcentaje, por ejemplo precargando la caché con el servicio JPresta Cache Warmer, para que casi nadie tenga que esperar a que PrestaShop genere la página.

La caché como escudo: lo que pasó el 17 de septiembre

Los datos de ese periodo incluyen un día que excluimos de la tabla, y tiene su propia historia. El 17 de septiembre la tienda sufrió un intento de ataque de denegación de servicio: una avalancha de peticiones desde muchas direcciones IP distintas que saturó el servidor.

Ese día, las páginas que PrestaShop tuvo que generar desde cero tardaron de media casi 18 segundos en empezar a responder (y más de 51 segundos en las categorías). Sin embargo, los visitantes que recibieron la página desde la caché apenas lo notaron: la caché del servidor siguió respondiendo en unos 285 ms y la caché estática en unos 84 ms, prácticamente lo mismo que cualquier otro día.

La explicación es sencilla: servir una página cacheada no necesita consultar la base de datos ni ejecutar la lógica de PrestaShop, así que consume una fracción mínima de recursos. Por eso, además de acelerar la tienda, una buena caché de página la hace mucho más resistente a picos de tráfico, ya sean campañas de marketing, bots agresivos o ataques. No sustituye a un cortafuegos o a una protección anti-DDoS, pero marca la diferencia entre una tienda que sigue vendiendo y una que se cae.

En la práctica, la navegación entre categorías y productos resulta inmediata, el servidor soporta mejor los picos de tráfico (campañas, Navidad, rebajas) y se libera capacidad de proceso para lo que no se puede cachear: el carrito, el checkout y el panel de administración.

Consejos para configurar la caché en PrestaShop

  • Revisa los módulos dinámicos: identifica qué bloques deben ser personalizados (carrito, bloque de usuario, productos vistos) y márcalos como dinámicos en el módulo. Es el paso más importante para evitar sorpresas.
  • Prueba antes de activar en producción: el módulo tiene un modo de prueba en el que solo tú ves las páginas cacheadas. Úsalo para revisar la tienda como cliente anónimo y como cliente registrado.
  • Ajusta la duración de la caché según la frecuencia con la que cambia tu catálogo.
  • Excluye lo que no debe cachearse: checkout, carrito, cuenta de cliente y páginas con formularios.
  • Combínalo con el resto de optimizaciones: imágenes en WebP, CSS y JS comprimidos, una versión de PHP actual y un buen alojamiento. La caché reduce el trabajo del servidor, pero no sustituye a una web bien construida.
  • Mide antes y después con PageSpeed Insights y con los informes de Core Web Vitals de Google Search Console.

Conclusión

En PrestaShop, una caché de página completa es probablemente la mejora de rendimiento con mejor relación entre esfuerzo y resultado. Con una configuración cuidadosa, como la que aplicamos en velasdeolor.es, una tienda con un catálogo grande puede responder tan rápido como una web estática, con los beneficios que eso supone en conversión y en SEO.

¿Tu tienda PrestaShop va lenta? En Localhost Services analizamos su rendimiento y te ayudamos a instalar y configurar la caché y el resto de optimizaciones. Contacta con nosotros.

Si quieres seguir mejorando tu tienda, te pueden interesar nuestra checklist de seguridad para tiendas PrestaShop y la guía sobre Core Web Vitals. Puedes consultar las características del módulo en la web oficial de JPresta.

Scroll al inicio

Esta actuación está impulsada por el Plan de Recuperación, Transformación y Resiliencia, financiada por la Unión Europea – Next Generation EU

Financiado por la Unión Europea - NextGenerationEU. Plan de Recuperación, Transformación y Resiliencia. Programa Kit Digital financiado por los fondos Next Generation del Mecanismo de Recuperación y Resiliencia