El desafio del cache en WooCommerce

El cache en WooCommerce requiere un equilibrio delicado: las paginas de productos, categorias y contenido estatico pueden y deben cachearse agresivamente para mejorar el rendimiento, pero las paginas del proceso de compra (carrito, checkout, mi cuenta) son completamente dinamicas y nunca deben cachearse. Una configuracion incorrecta del cache en WooCommerce puede resultar en que los clientes vean el carrito de otro usuario, precios incorrectos, o datos personales de otras sesiones.

Paginas de WooCommerce y su politica de cache

PaginaCacheableRazon
Pagina de tienda y categoriasSi (cache publico)El contenido es igual para todos los usuarios
Pagina de producto individualSi (cache publico)El contenido base es igual para todos
Carrito (/cart)NoEl contenido es unico por usuario y sesion
Checkout (/checkout)NoDatos personales y de pago, nunca cachear
Mi cuenta (/my-account)No (o cache privado)Informacion personal del usuario registrado
Confirmacion de pedidoNoDetalles especificos del pedido completado

Configurar LiteSpeed Cache para WooCommerce

  1. Activar LiteSpeed Cache en WordPress.
  2. Ir a LiteSpeed Cache > WooCommerce. LiteSpeed Cache tiene un modulo especifico para WooCommerce que configura automaticamente las exclusiones correctas.
  3. Activar la opcion Activar compatibilidad con WooCommerce.
  4. Verificar que las opciones Bypass Cart Page y Bypass Checkout Page estan activadas.
  5. Activar la opcion Cachear carrito vacio para que las visitas de usuarios sin productos en el carrito si puedan ser cacheadas.

Configurar exclusiones manuales de cache

Ir a LiteSpeed Cache > Cache > Excluir y agregar las URLs y cookies de WooCommerce:

# URIs a excluir del cache
/cart
/checkout
/my-account
/order-received

# Cookies que indican usuario con sesion activa o carrito con productos
woocommerce_cart_hash
woocommerce_items_in_cart
wp_woocommerce_session_
wordpress_logged_in_

Cache ESI para WooCommerce (avanzado)

LiteSpeed soporta ESI (Edge Side Includes) que permite cachear la pagina completa mientras algunos fragmentos dinamicos (como el mini-carrito en la cabecera) se cargan de forma independiente. Esto elimina la necesidad de excluir paginas completas del cache por tener un elemento dinamico pequeño. Activar ESI en LiteSpeed Cache > ESI si esta disponible en el plan de hospedaje.

Was this answer helpful? 0 Users Found This Useful (0 Votes)