Un cliente añade un producto, navega a otra página y ve un mini carrito vacío o una caja. Peor aún, un visitante puede recibir marcas de carrito almacenadas en caché de otra sesión. Estos son problemas funcionales y de privacidad, no compensaciones aceptables para una puntuación más rápida.
Deshabilite la ruta de caché insegura a través de controles admitidos y luego identifique si el HTML de página completa, los fragmentos o el manejo de la sesión causaron la discrepancia.
Reproducir con dos visitantes aislados
Utilice dos perfiles de navegador privados separados. Agregue diferentes productos en cada uno y navegue por las páginas de productos, carrito y pago.
Registre qué elemento está mal:
- página completa del carrito;
- recuento de carritos de cabecera;
- cajón del minicarro;
- totales de pago;
- carrito restaurado sólo después de la actualización.
Inspeccione los encabezados de la caché de respuesta y las cookies de sesión de WooCommerce. No utilice cuentas de clientes reales ni datos de pago.
Proteger rutas dinámicas de WooCommerce
Las páginas de carrito, pago y cuenta deben excluirse del caché normal de página completa. Confirme las exclusiones utilizando las URL de la página actual y los prefijos de idioma.
Los slugs de pago personalizados, las rutas traducidas o las páginas de carrito basadas en bloques pueden quedar fuera de una regla anterior. Las reglas de caché de CDN también pueden anular las exclusiones locales de un plugin de WordPress.
No almacene en caché estas páginas simplemente porque las pruebas desconectadas aparecen más rápido. Contienen un estado específico del visitante.
Verifique las reglas de omisión basadas en cookies
WooCommerce establece cookies que indican el estado del carrito o de la sesión. La caché de la página debe respetar las cookies relevantes según la configuración de WooCommerce admitida por el proveedor de caché.
Si la CDN ignora las cookies o varía en el conjunto incorrecto, puede ofrecer HTML en caché público a un comprador. Por el contrario, omitir cada cookie inofensiva destruye la tasa de aciertos.
Utilice reglas de compatibilidad mantenidas en lugar de inventar nombres comodín de memoria. Los nombres de las cookies y el comportamiento de almacenamiento pueden variar según la versión y configuración de WooCommerce.
Comprender los fragmentos del minicarro
Los temas clásicos de WooCommerce pueden usar fragmentos de carrito para actualizar el encabezado a través de AJAX después de que se carga una página almacenada en caché. Los bloques más nuevos pueden utilizar diferentes API de datos.
Si el HTML de la página se almacena en caché correctamente pero el minicarro permanece vacío, inspeccione las solicitudes de fragmentos o API de la tienda y los errores de la consola. El retraso de JavaScript, el almacenamiento en caché nonce o un punto final deshabilitado pueden impedir la actualización dinámica.
No habilite una secuencia de comandos de fragmentos heredados globalmente si el tema usa un bloque de carrito diferente. Primero confirme el componente recurso.
Purgar entradas de caché contaminadas
Si se ha almacenado HTML personalizado en caché, deshabilite la regla defectuosa y elimine el carrito, el pago, la cuenta y las páginas públicas afectadas que contengan el estado del carrito representado por el servidor. Utilice purgas específicas cuando el diseño de la caché lo permita.
Revise los registros de acceso o caché para detectar visitas inesperadas en rutas dinámicas. Evite conservar un caché potencialmente contaminado simplemente para diagnosticarlo más tarde.
Realice capturas de pantalla o exportaciones de configuración antes de cambiar las reglas para que se pueda revisar y documentar el estado seguro.
Verificar la persistencia de la sesión de forma independiente
Cuando la página completa del carrito no está almacenada en caché pero el contenido aún desaparece, inspeccione las cookies, la coherencia HTTPS y el comportamiento de la sesión/base de datos PHP. Cambiar entre www y dominios apex o HTTP y HTTPS puede evitar que se envíe la cookie esperada.
Los trabajos de limpieza de bases de datos, los plugins de seguridad y las fallas en la caché de objetos también pueden afectar las sesiones de WooCommerce. Haga coincidir las marcas de tiempo con una prueba controlada antes de cambiar la configuración de retención.
No extienda la duración de las sesiones indefinidamente como sustituto de la reparación del almacenamiento.
Ejecute una prueba de regresión completa
Pruebe los carritos de invitados y de cuentas, los cambios de cantidad, los cupones, el envío, la actualización del proceso de pago, la devolución desde un entorno limitado de pagos y el comportamiento del carrito vacío. Repita en todos los idiomas admitidos y navegación móvil.
Confirme que los accesos al caché permanezcan disponibles en páginas de contenido y catálogos seguros mientras que las rutas dinámicas se evitan correctamente. Supervise los pedidos y los errores del carrito después de la implementación.
Tratar los carritos compartidos o perdidos como urgentes
Si un visitante puede ver los datos del carrito de otro visitante, desactive inmediatamente la regla de caché pública responsable e investigue la exposición de acuerdo con el proceso de incidentes de la empresa.
Solicite una reparación especializada cuando la CDN y las reglas de origen entren en conflicto, los fragmentos del carrito de bloques fallen o las sesiones desaparezcan de forma intermitente. Comparta primero los pasos de prueba y los encabezados desinfectados; Las credenciales y los datos del cliente requieren un canal seguro acordado.