Redacción: 4SYSTEMPublicado el Actualizado el
9 lectura mínima
Un caché WordPress eficiente reutiliza el contenido público sin reutilizar los datos propios del visitante. Un precio antiguo, una cesta que parece vacía o una forma rechazada no necesariamente se pueden corregir vaciándolo todo. Es necesario identificar la respuesta involucrada, la capa que la mantiene y las condiciones bajo las cuales varía.
La configuración correcta no es “almacenar en caché todo”. Consiste en conservar lo que se puede compartir, aislar sesiones y planificar una depuración tras la modificación. La validación se refiere al contenido recibido y a las posibles acciones, no sólo a la velocidad de visualización.
Identifica lo que guarda cada capa
Pueden ocurrir cuatro capas en la misma visita. Distinguirlos evita pedir a una extensión que corrija un problema que no controla.
- Navegador : Mantiene las respuestas localmente, incluidos archivos y, a veces, HTML. Este caché pertenece al cliente, a diferencia de un caché compartido entre visitantes.[11]
- Página : una extensión donde el servidor mantiene una respuesta HTML ya producida. Si contiene un nombre o una cesta, se deberá controlar su reutilización.
- Asunto : La aplicación reutiliza datos intermedios, en lugar de toda la página. Descubra qué objetos se almacenan, con qué claves y qué invalidaciones. No asuma que un defecto visual proviene de esta capa.
- CDN : Un servicio delante del hosting puede retener respuestas independientemente del caché de la página. Una purga en WordPress no prueba que esta copia haya desaparecido.
Tenga en cuenta la extensión activa, las opciones del host, la posible CDN y el caché de objetos persistente. Para cada capa, identifique quién establece las exclusiones y quién desencadena la purga. No superpongas mates de dos páginas sin saber cómo encajan.
Caché WordPress: lee las directivas sin contradicción
Tres directivas HTTP satisfacen diferentes necesidades:
no-cachepermite el almacenamiento, pero requiere revalidación antes de su reutilización mediante la memoria caché HTTP. No significa "sin copias".[11]no-storesolicita no almacenar la respuesta. Sin embargo, no elimina las respuestas antiguas que ya se conservan para esta URL: una corrección también debe procesar estas copias.[11]privatereserva almacenamiento para cachés privados, especialmente para el navegador. No es cifrado ni control de acceso a cuentas.[11]
Para obtener una respuesta personalizada que necesita ser revalidada, Cache-Control: no-cache, private es un esquema documentado por MDN.[11] No reserve almacenamiento para las respuestas que su política exige que no se conserven.
Una caché administrada puede seguir sus propias reglas: controlar la documentación y el comportamiento de la CDN o el servidor, no solo Cache-Control.[11] Finalmente, una cookie no convierte automáticamente una respuesta en privada.[11]
Excluir rutas dinámicas y sesiones maestras
WooCommerce solicita excluir el carrito de compras, la validación de pedidos y la cuenta del cliente del caché, porque estas páginas muestran información específica del visitante.[10] Verifique las URL configuradas, sus variantes de idioma y los pasos de la cuenta. Una regla dirigida únicamente /cart/ es insuficiente si su carrito usa otra dirección.
Nuestro enfoque consiste entonces en rastrear las variaciones: conexión, cesta activa, moneda o precio según el perfil, si estas funciones existen. Para HTML compartido, prefiera una solución alternativa cuando la sesión personalice la respuesta. Una variación más fina requiere claves documentadas y una receta que demuestre el aislamiento.
Galletas woocommerce_cart_hash, woocommerce_items_in_cart y wp_woocommerce_session_ se encuentran entre las señales descritas por WooCommerce.[10] Configurar su procesamiento luego de la integración; no los elimine para aumentar artificialmente las respuestas enviadas desde la memoria caché.
La exclusión de _wc_session_ también se menciona para sistemas que ofrecen una caché de base de datos, según la extensión o el alojamiento.[10] Este consejo condicional no justifica la desactivación de ningún caché de objetos.
Controlar también la minicesta integrada en páginas públicas. Si este bloqueo se renueva por separado, verifique la respuesta que lo alimenta en ambos perfiles: una página correctamente excluida no protege un fragmento personalizado almacenado en otro lugar.
Tabla de diagnóstico por capa y escenario de usuario
Aquí hay una tabla de trabajo, no una lista de incidentes observados. Los síntomas son escenarios de diagnóstico; la evidencia indica lo que debe establecer su receta.
| Escenario de usuario | Capa a examinar | Control de prioridad | Se espera decisión y prueba |
|---|---|---|---|
| Visitante anónimo, precio anterior | Página y CDN | Compare el registro grabado, el HTML recibido y la respuesta después de la purga específica | Invalidar las copias afectadas; mantener el precio esperado y las respuestas. |
| Precio anterior en un navegador | Navegador | Comparar la misma ruta en un perfil nuevo | Examinar la frescura HTTP; conservar encabezados y comparación. |
| Canasta de otro visitante | Página y CDN | Sesiones de prueba A y B por separado | Excluir viaje personalizado; probar que cada sesión guarda sus artículos. |
| Sesión inconsistente a pesar de la reciente HTML | Objeto o base de datos | Revisar claves y exclusiones documentadas | Ajustar la regla identificada; Adjunte su configuración y la prueba. |
| Formulario rechazado después de regresar a la página | Página y navegador | Verificar posible token y enviar respuesta | Adaptar la actualización o omitir la caché; mantener un envío de prueba aceptado. |
| Agregar al carrito mediante URL | Servidor y CDN | Verifique la regla en ?add-to-cart= | Proporcione una solución alternativa adecuada, como en el ejemplo de Varnish documentado por WooCommerce.[10] |
Verificar el pedido y conservar el comprobante de validación
Antes de cualquier modificación, prepare una hoja de recetas: URL, escenario, estado de conexión, contenido esperado, capas activas y cambio planificado. Utilice cuentas de prueba y datos de contacto ficticios. Tenga en cuenta los nombres de las cookies útiles, nunca sus valores o tokens en un documento compartido.
- Establecer referencia. Verifique los datos guardados y el comportamiento sin que los cachés afectados los reutilicen. En una preproducción protegida, pruebe primero la ruta dinámica y luego active las capas por separado. Una puesta en escena con diferentes reglas de caché no valida la producción.
- Seguir respuesta. Examine el navegador, luego la CDN, la caché de la página y finalmente los objetos si es necesario. Tenga en cuenta los encabezados disponibles y las banderas de proveedor. La ausencia de un indicador no prueba la ausencia de un caché.
- Decidir y purgar. Se corrige la capa identificada, se eliminan las URL afectadas y se verifican las variantes. También organizar la invalidación tras un cambio de precio, contenido o configuración; No confíe únicamente en el sangrado manual.
- Pruebe el aislamiento. Abra dos perfiles de navegador separados, A y B. Agregue artículos diferentes, navegue hasta la cuenta y envíe los formularios permitidos. Dos pestañas de un mismo perfil no constituyen dos sesiones aisladas. Luego repita estos pasos después de reutilizar el caché y luego después de desconectarse. Una prueba exitosa inmediatamente después de la depuración no verifica todas las respuestas retenidas.
Archive la configuración retenida, las capturas redactadas, las respuestas relevantes y la decisión de aceptación. No validar si los datos pasan de una sesión a otra, incluso cuando la carga parezca mejor.
Caso ficticio: precio anterior, cestas aún distintas
En este caso explícitamente ficticio, una tienda muestra un precio antiguo en una ficha de producto, mientras que la cesta debe seguir siendo específica para cada visitante. Empiece por comprobar el precio registrado y la respuesta del público: una copia desactualizada HTML no es un error de sesión.
Si el registro público es la copia obsoleta, oriente su invalidación en la caché de la página y en la CDN. Si el precio varía según la cuenta, trate esta variación como personalizada, sin publicar su respuesta en un caché común.
La validación esperada combina dos observaciones: el formulario presenta el precio de referencia y las cestas A y B permanecen distintas después de navegar y regresar al formulario. Un precio corregido no es suficiente para aceptar la configuración.
Formularios: visualización separada, envío y datos personales
Para cada formulario, identifique la página de visualización, el destino de envío, los tokens y los datos previamente completados. Nuestra regla de receta es probar la visualización, el envío, el mensaje de confirmación y un nuevo intento después de la navegación. El HTML público y la respuesta personalizada no deberían recibir automáticamente la misma política.
Si la extensión genera un token dependiendo de la sesión o su período de validez, verifique su mecanismo de renovación. En ausencia de compatibilidad documentada, omita la caché de páginas en esta ruta; no retire la protección para que el formulario sea utilizable. Excluya del caché compartido las respuestas de envío que contengan datos personales o el estado de la sesión.
Estas configuraciones no demuestran el cumplimiento del RGPD: no verifican la base legal del formulario ni su política de retención. Una vez validada la receta funcional, nuestro Guía de elementos básicos de Web Vitals ayuda a distinguir la carga, la interactividad y la estabilidad antes que otras correcciones.
Preguntas frecuentes
¿Por qué el restablecimiento de contraseña vuelve al inicio de sesión?
WooCommerce informa que una página de cuenta almacenada en caché puede causar este bucle, especialmente si la caché del servidor no lo excluye.[10] Solicite verificación al host y luego vuelva a probar el vínculo con una cuenta ficticia, sin una sesión ya conectada. Incluya los pasos de restablecimiento en la exclusión del recorrido de la cuenta, no solo en su pantalla principal.
¿Podemos mantener CSS archivos almacenados en caché en la cuenta del cliente?
Sí, los archivos estáticos inmutables son particularmente adecuados para el almacenamiento en caché.[11] La cuenta HTML y sus recursos públicos no tienen la misma política. Verifique que el archivo siga siendo el mismo para todos y no contenga ningún dato de sesión. Cuando un archivo cambie, controle su versionado o invalidación, sin deshabilitar indiscriminadamente el caché de todos los elementos.
¿Se debe purgar todo después de una modificación del producto?
No sistemáticamente. Lista las páginas que incluyen los datos modificados: archivo, categoría, búsqueda o bloque de recomendaciones, dependiendo de tu sitio. Una depuración dirigida es relevante si estas dependencias son conocidas y cubiertas por la integración. Si no es así, elija una purga documentada más grande y luego rehaga la receta; No asuma que solo cambia el enchufe.
Su próxima acción: formalizar una receta
Elige una ficha de producto, la cesta y un formulario de prueba. Completar la grilla, identificar al responsable de cada capa y exigir prueba de aislamiento antes de realizar el mantenimiento de una instalación. Si las reglas de hosting, CDN y WordPress se superponen, el servicios web de 4SYSTEM puede ayudarle a formular el diagnóstico y la validación.
Fuentes
- How to configure caching plugins for WooCommerce | WooCommerce developer docs (consultado 2026-10-08)
- HTTP caching - HTTP | MDN (consultado 2026-10-08)