Una tienda WooCommerce que anda perfecta con diez visitas simultáneas puede caerse con cincuenta. No suele ser culpa del hosting a secas: casi siempre son decisiones de configuración que nadie revisó. Estos son los errores que más se repiten cuando el tráfico sube (una campaña, un Black Friday, un enlace viral).
1. Cachear todo, incluso lo que no se debe
El primer reflejo es "activar caché en todo". En WooCommerce eso rompe cosas: el carrito, el checkout y la cuenta del cliente son contenido personalizado y no pueden servirse como un archivo igual para todos. Si ves carritos que muestran productos de otra persona o precios que no se actualizan, la causa casi siempre es una exclusión mal hecha.
- Excluí de la caché
/carrito/,/finalizar-compra/y/mi-cuenta/(con los slugs de tu sitio). - Respetá las cookies
woocommerce_cart_hashewoocommerce_items_in_cart: indican que ese visitante tiene una sesión activa. - Cacheá sin miedo el catálogo, las categorías, el blog y la home, que son la mayor parte del tráfico.
2. Fragmentos de carrito que disparan peticiones AJAX
El famoso ?wc-ajax=get_refreshed_fragments se ejecuta en cada página para actualizar el mini-carrito. Es una petición que salta la caché y llega a PHP y a la base de datos. Con mucho tráfico, miles de esas peticiones son suficientes para saturar un hosting compartido. Si tu tema no necesita mini-carrito, desactivá los fragments; si lo necesita, asegurate de que solo se cargue cuando hay productos en el carrito.
3. Base de datos inflada
Las sesiones de WooCommerce, los transients caducados y las revisiones de productos se acumulan. Una tabla wp_options con muchos datos autocargados (autoload) hace más lento cada request, cachead o no. Revisá periódicamente:
- Cuántos MB de opciones con autoload se cargan en cada página.
- Sesiones y transients vencidos que nunca se limpiaron.
- Plugins desinstalados que dejaron sus tablas y opciones.
4. Consultas pesadas en el admin y el cron
WP-Cron se dispara con las visitas. En un pico de tráfico, tareas como sincronizar inventario, enviar correos o regenerar informes pueden ejecutarse varias veces en paralelo y competir con los clientes que están comprando. Si podés, desactivá el cron por visita y programalo con un cron real del servidor cada pocos minutos.
5. Imágenes sin optimizar en las fichas de producto
Una ficha con seis fotos de 3 MB pesa más que todo el resto del sitio junto. Es el error más fácil de corregir y el que más impacta en LCP (Core Web Vitals) en móviles. Subí imágenes del tamaño real que se muestran y en formato moderno como WebP.
Dónde ayuda servir HTML estático
Para todo el contenido público (catálogo, categorías, blog, páginas informativas), servir un archivo HTML estático evita que PHP y MySQL trabajen en cada visita. Así los recursos del servidor quedan libres para lo que sí es dinámico: carrito y checkout. Podés ver cómo funciona en la página de funcionamiento de cache.lat y qué requisitos pide en los datos técnicos.
Checklist antes de una campaña
- Probá el flujo completo de compra en una ventana privada, con la caché activa.
- Confirmá que carrito, checkout y mi cuenta están excluidos.
- Revisá el tamaño de la base de datos y las opciones autoload.
- Pasá el cron a un cron real del servidor.
- Optimizá las imágenes de los productos que vas a promocionar.
- Mirá el uso de CPU y de procesos PHP durante una prueba de carga moderada.
Si tenés dudas sobre cómo encaja la caché en tu tienda, la documentación completa es un buen punto de partida, y el equipo de TNL responde consultas en su página de contacto.
vaya revisando mi instalacion veo que no le he dado mantenimiento a la db podrian recomendar un plugin porque cache.lat no lo hace o si?
Carlos ya hemos integrado esa funcionalidad, espero puedas descargarte la última versión, y pruebes las últimas funcionalidades
Hola Carlos, gracias por la pregunta: sí, cache.lat incluye mantenimiento de base de datos, así que no necesitás sumar otro plugin para eso. Desde el panel (manual) o de forma automática una vez por semana con WP-Cron, limpia transients vencidos, metadatos huérfanos, revisiones viejas y sesiones de carrito de WooCommerce expiradas. Es conservador a propósito: nunca toca pedidos, productos, usuarios ni la papelera. Ojo: la limpieza de sesiones de WooCommerce forma parte de la licencia Avanzada; la limpieza general está en todos los niveles.
Además de eso, el plugin hace minificado conservador, JS diferido (jQuery, WooCommerce, pasarelas y reCAPTCHA siempre excluidos), lazy-load, font-display: swap, y optimización de imágenes a AVIF/WebP. Está todo en la documentación: https://cache.lat/documentacion.php y en https://cache.lat/datos-tecnicos.php.
Novedades recientes del plugin (versión actual 1.23.0): botón «Reintentar fallidas» para regenerar solo las páginas que fallaron, y verificación de la actualización (huella SHA-256 y tamaño del paquete) antes de instalarla. Antes, en la 1.22.0, se sumaron gráficas de velocidad en la prueba de rendimiento, y en la 1.21.x correcciones para hostings compartidos lentos y para proteger el .htaccess. Si algo no te funciona, escribinos en https://tunegocioenlinea.net/contacto.
creo que ha evolucionado y han entregado una nueva version deberia de funcionar
Es correcto José hemos agregado más funciones gracias por ser parte de nuestra comunidad
De hecho hoy he revisado y han integrado la limpieza de db , pueden probarlo o instalar la última versión del plugin , de nada
Tienes razón hemos agregado esa funcionalidad y un servicio de supervisión de rendimiento