Caché para WordPress: Configuración Completa para Máxima Velocidad
Tutorial completo de caché para WordPress en hosting Apache. Configuración óptima con WP Super Cache, Autoptimize y Redis para lograr puntuaciones perfectas en PageSpeed Insights.
WP Super Cache + Redis: la combinación real para Apache
WP Super Cache es el plugin de caché de página oficial de WordPress.org, gratuito y mantenido por Automattic. A diferencia de soluciones ligadas a un servidor web específico, funciona en cualquier hosting con Apache o Nginx: genera archivos HTML estáticos que Apache sirve directamente vía mod_rewrite, evitando ejecutar PHP y consultar la base de datos en cada visita de un usuario anónimo. Combinado con Redis para el caché de objetos (disponible en los planes VacaWeb), cubre tanto el caché de página como el de base de datos.
Instalación y configuración inicial
# Instalar via WP-CLI (método recomendado)
wp plugin install wp-super-cache --activate
# Verificar que el caché está generando archivos estáticos
curl -I https://tudominio.com.mx | grep -i "cache-control"
# Tras la segunda visita a una página, debe aparecer un Cache-Control con max-age
# Revisa también wp-content/cache/supercache/ — ahí se guardan los HTML estáticos
Configuración de caché de página
En WordPress → Settings → WP Super Cache → pestaña "Easy":
- Caching: Caching On (modo "Use mod_rewrite" para mejor rendimiento)
- Don't cache for known users: activado (nunca cachear usuarios logueados)
- Cache Rebuild: activado (sirve caché viejo mientras genera uno nuevo)
- Compress pages: activado (reduce el tamaño de transferencia)
- Expiry Time: 604800 segundos (7 días — para sitios de bajo cambio, en pestaña "Advanced")
# Purgar todo el caché manualmente (elimina los archivos estáticos generados)
rm -rf wp-content/cache/supercache/*
# Verificar permisos correctos de la carpeta de caché
chmod -R 755 wp-content/cache/
Optimización de CSS, JS e imágenes
WP Super Cache solo maneja el caché de página — para minificar/combinar CSS y JS necesitas un plugin adicional. Autoptimize (gratuito, oficial de WordPress.org) es el estándar para esto en cualquier hosting:
# Instalar Autoptimize para minificación y combinación de CSS/JS
wp plugin install autoptimize --activate
# Instalar un plugin de optimización de imágenes con WebP automático
wp plugin install shortpixel-image-optimiser --activate
En Autoptimize activa: "Optimize JavaScript Code", "Optimize CSS Code" y "Also aggregate inline JS/CSS". Para lazy loading de imágenes, WordPress ya lo incluye nativamente desde la versión 5.5 — no necesitas un plugin adicional para eso.
Caché de objetos con Redis
Para WooCommerce y sitios con muchas páginas dinámicas, el caché de objetos reduce drásticamente las consultas a la base de datos. Redis está disponible en los planes de VacaWeb:
# Verificar que Redis está disponible en tu hosting
redis-cli ping
# Debe responder: PONG
# Instalar plugin Redis Object Cache en WordPress
wp plugin install redis-cache --activate
wp redis enable
# Verificar que el caché de objetos está activo
wp redis status
Reglas de exclusión de caché para WooCommerce
# En WP Super Cache → Advanced → "Rejected URI's", agregar estas URIs de WooCommerce:
# (cart|checkout|my-account|wc-api|addons)
# WP Super Cache ya excluye automáticamente páginas con parámetros de sesión/cookies
# de carrito activo — pero conviene verificar manualmente en un pedido de prueba.
| Configuración | Impacto en PageSpeed | Riesgo de ruptura |
|---|---|---|
| Page Cache básico (WP Super Cache) | +40–60 puntos | Bajo |
| CSS/JS Minify (Autoptimize) | +10–15 puntos | Medio (verificar visualmente) |
| CSS/JS Combine (Autoptimize) | +5–10 puntos | Alto (puede romper scripts) |
| Lazy Load imágenes (nativo de WP) | +15–20 puntos | Bajo |
| WebP automático (ShortPixel) | +10–20 puntos | Muy bajo |
| Redis Object Cache | +20–30% TTFB | Muy bajo |
Escenarios Prácticos: Caché en Acción
Escenario 1 — Tienda WooCommerce con caché y usuarios logueados: El desafío de WooCommerce es que el carrito y el checkout son páginas dinámicas que no deben cachearse. WP Super Cache detecta cookies de sesión de WooCommerce automáticamente, pero conviene verificarlo:
# Verificar que WooCommerce no se está cacheando incorrectamente:
# 1. Agrega un producto al carrito en una ventana normal
# 2. Abre el mismo sitio en una ventana de incógnito
# 3. El carrito NO debe aparecer en la ventana de incógnito
# Si el carrito "se filtra" entre sesiones, agrega manualmente a Rejected URI's:
# (cart|checkout|my-account)
# Purgar caché desde WP-CLI tras cambios:
rm -rf wp-content/cache/supercache/*
Escenario 2 — Blog de alto tráfico con imágenes optimizadas: ShortPixel convierte imágenes a WebP automáticamente y sirve la versión correcta según el navegador del visitante, sin intervención manual tras la configuración inicial.
Errores Comunes con Caché en WordPress
| Error | Síntoma | Causa | Solución |
|---|---|---|---|
| Carrito vacío en tienda | Items del carrito desaparecen | Caché de páginas dinámicas | Agregar rutas de carrito/checkout a "Rejected URI's" |
| CSS no actualizado tras cambios | Estilos viejos en navegador | CSS minificado cacheado | Vaciar caché de Autoptimize y WP Super Cache |
| Página de login cacheada | Todos ven el mismo estado | Sin exclusión de /wp-admin | WP Super Cache excluye /wp-admin por defecto; verificar config |
| Sin caché en móvil | Móvil más lento que desktop | Tema responsive con contenido dinámico por dispositivo | Activar "Cache for mobile devices separately" en Advanced |
| WebP no sirve | Imágenes siguen en JPEG pesado | Plugin de imágenes no configurado o sin cuota | Verificar cuota/configuración de ShortPixel |
Preguntas Frecuentes sobre Caché en WordPress
¿WP Super Cache funciona en cualquier hosting?
Sí. A diferencia de soluciones ligadas a un servidor web específico, WP Super Cache
funciona en cualquier hosting con Apache (con mod_rewrite) o Nginx. Es la opción
más universal para caché de página en WordPress.
¿WP Super Cache o WP Rocket: cuál elegir?
WP Rocket ($59/año) es más completo de fábrica (incluye minificación, lazy loading e integración con CDN en un solo plugin) y requiere menos configuración manual. WP Super Cache es gratuito pero necesita combinarse con Autoptimize y un plugin de imágenes para cubrir lo mismo. Para presupuesto ajustado, la combinación gratuita es igual de efectiva, solo toma más tiempo configurarla.
¿Cómo configuro el caché para que no interfiera con formularios?
Agrega las URLs de páginas con formularios (contacto, checkout) a "Rejected URI's" en WP Super Cache → Advanced. Los formularios con nonce de WordPress generalmente no se ven afectados porque el nonce se genera en el momento de carga, pero es buena práctica excluir esas páginas del caché de todos modos.
¿La optimización de imágenes de ShortPixel es destructiva?
No si activas la opción de respaldo de originales (disponible en el plan gratuito). ShortPixel guarda el original y sirve la versión WebP/optimizada. Si desactivas el plugin, las imágenes originales siguen intactas. El plan gratuito incluye 100 imágenes/mes; planes pagados amplían la cuota.
¿Cómo verifico que la caché está funcionando correctamente?
Revisa la carpeta wp-content/cache/supercache/ vía FTP/SSH — debe tener
subcarpetas con archivos index.html generados por cada página visitada. También
puedes abrir las herramientas de desarrollador del navegador (F12 → Network) y buscar si
el tiempo de respuesta baja notablemente en la segunda carga de una misma página.
📚 Profundiza en este tema
Fundador de VacaWeb, con más de 17 años de experiencia administrando infraestructura Linux en producción (desde 2009). Especialista en CloudLinux, cPanel/WHM y arquitectura de hosting de alto rendimiento para el mercado mexicano. Ha diseñado y administrado infraestructura de hosting para negocios mexicanos, desde su primer proyecto profesional hasta la consolidación en VacaWeb.