
Cuando alguien te dice «activa la caché», puede estar hablando de cosas muy distintas. En WordPress hay al menos cinco capas de caché, cada una con un trabajo diferente. Entenderlas evita los dos errores más comunes: pensar que con un plugin ya está todo resuelto, o instalar tres plugins que hacen lo mismo y se pisan.
Cómo se arma una página, en simple
Cada vez que alguien visita una página de WordPress, pasan estas cosas:
- El servidor ejecuta PHP, que lee los archivos de WordPress, el tema y los plugins.
- WordPress hace consultas a la base de datos para obtener el contenido y los ajustes.
- Se arma el HTML de la página y se envía.
- El navegador descarga imágenes, CSS y JavaScript.
Cada capa de caché ahorra uno de esos pasos.
1. OPcache: el código PHP ya traducido
Guarda el código PHP ya «traducido» a instrucciones de máquina, para no traducirlo en cada visita. Funciona para todo: la web, el escritorio, las peticiones de la API.
- ¿Quién la maneja? El servidor. Casi todos los hostings la tienen activa.
- ¿Qué tienes que hacer? Normalmente nada. Puedes comprobarlo en Salud del sitio → Información → Servidor.
2. Caché de objetos: consultas que no se repiten
WordPress guarda en memoria los resultados de sus consultas a la base de datos, pero solo mientras dura esa visita. Con una caché de objetos persistente (Redis o Memcached), esos resultados se conservan entre visitas.
- ¿Cuándo se nota? En el escritorio, en WooCommerce, en sitios con usuarios conectados y en todo lo que no se puede cachear como página.
- ¿Cómo se activa? El servidor debe tener Redis o Memcached, y WordPress necesita un plugin que lo conecte (por ejemplo, Redis Object Cache). Muchos hostings lo ofrecen con un clic.
3. Caché de página: la página completa, lista
Guarda el HTML final de cada página. La siguiente visita recibe ese archivo directamente, sin ejecutar PHP ni consultar la base de datos. Es la caché que más se nota en la parte pública.
- ¿Quién la maneja? Un plugin (WP Super Cache, LiteSpeed Cache, WP Rocket, W3 Total Cache…) o el propio servidor (LiteSpeed, Nginx, Varnish).
- ¿Qué no se debe cachear? El carrito, el pago, «Mi cuenta», las páginas de usuarios conectados y el escritorio. Los buenos plugins lo excluyen solos, pero revísalo.
Usa una sola caché de página. Si tu hosting usa LiteSpeed, el plugin LiteSpeed Cache aprovecha la caché del servidor; instalar otro plugin de caché de página encima no suma, resta.
4. Caché del navegador: lo que tu visita ya descargó
Las imágenes, el CSS y el JavaScript no cambian en cada visita. Con las cabeceras adecuadas, el navegador los guarda y no los vuelve a pedir durante semanas.
- ¿Quién la maneja? El servidor, con cabeceras como
Cache-ControlyExpires. Muchos plugins de caché las configuran por ti. - ¿Y si cambio un archivo? WordPress agrega
?ver=a las URLs de los archivos CSS y JS, así que cuando cambia la versión, el navegador descarga el nuevo.
5. CDN: copias cerca de cada visitante
Un CDN (como Cloudflare) guarda copias de tus archivos en servidores repartidos por el mundo. Una visita desde Punta Arenas o desde Madrid recibe los archivos del servidor más cercano.
- Por defecto, Cloudflare solo cachea archivos estáticos (imágenes, CSS, JS), no el HTML.
- Para cachear también el HTML hay que configurar reglas, excluyendo con cuidado el escritorio, el login, el carrito y a los usuarios conectados.
¿Qué necesita tu sitio?
- Blog o sitio de empresa: OPcache (ya lo tienes) + caché de página + caché del navegador. Con eso, el 90 % del trabajo está hecho. Un CDN suma si tienes visitas de muchos países.
- Tienda WooCommerce: todo lo anterior + caché de objetos, porque buena parte de una tienda no se puede cachear como página.
- Comunidad, cursos o membresías (muchos usuarios conectados): la caché de objetos es la prioridad, porque la caché de página casi no aplica a usuarios conectados.
¿Y los transients?
Los transients son una caché que usan los plugins para guardar datos temporales (por ejemplo, la respuesta de una API) durante un tiempo. Sin caché de objetos se guardan en la base de datos; con ella, en memoria. Si alguna vez tienes miles de transients vencidos, se borran con wp transient delete --expired.
Cómo saber qué caché respondió
curl -sI https://tudominio.cl/ | grep -iE "cache|age|cf-cache-status|x-litespeed|x-proxy"
Busca palabras como hit (vino de la caché) o miss (se generó en ese momento). Si siempre ves miss, tu caché de página no está funcionando.
¿No sabes qué combinación de cachés tiene tu hosting? Comparte en el foro el resultado del comando de arriba y te ayudamos a interpretarlo.





