Saltar al contenido principal

WordPress · Cart bridge

El cart bridge mantiene al widget en sintonía con el carrito de WooCommerce. Cuando un cliente añade, quita o vacía el carrito, el plugin emite un CustomEvent('neuroon:cart-update') en window. El widget escucha ese evento y refresca sus respuestas (cross-sell, validaciones, prompts).

No tienes que hacer nada para activar el bridge: el plugin lo wirea automáticamente cuando carga el widget en la página. Cobertura medida internamente: ~95 % de las mutaciones del carrito en una WC estándar.

Nombre del evento

El plugin escucha los cambios del carrito de WooCommerce (añadir, quitar, vaciar) y, cuando detecta una mutación, dispara CustomEvent('neuroon:cart-update') en window. Es el mismo nombre de evento documentado en la recipe recipes/custom-cart-bridge, así que cualquier listener que escribas funciona igual con el plugin que con tu propia integración.

Payload

El plugin emite el evento sin payload (detail ausente). El widget pide al servidor el estado actualizado del carrito a través de la API de WooCommerce vía AJAX (fragments) o consulta directamente el endpoint público de WC. Esto evita exponer datos sensibles desde scripts inline.

Si tienes un caso especial (carrito en JSON propio, headless WC, etc.), puedes emitir tu propio evento con detail:

window.dispatchEvent(new CustomEvent('neuroon:cart-update', {
detail: {
items: [
{ productId: 'PRD-001', name: 'Smart Speaker', price: 79.99, quantity: 2 }
],
total: 159.98,
currency: 'EUR'
}
}));

El widget acepta ambos modos.

Validar que el bridge funciona

  1. Abre la consola del navegador en una página con producto.
  2. Suscríbete:
window.addEventListener('neuroon:cart-update', e => console.log('cart-update', e));
  1. Pulsa Add to cart. Deberías ver el log casi al instante.

Si no ves el evento:

  • Comprueba que jQuery está cargado (typeof jQuery !== 'undefined' en consola).
  • Verifica que el widget está activo en la página (debe haberse impreso su bloque de configuración).
  • Mira la pestaña Diagnostics del plugin para ver si el bridge está marcado como attached.

Cuándo NO usar este bridge

  • Headless WooCommerce / Storefront propio: tu propio frontend ya conoce el estado del carrito; emite tu propio CustomEvent directamente. Ver recipes/custom-cart-bridge.
  • Carritos completamente AJAX externos (ej. mini-cart hecho en React montado fuera de WC): igual que arriba, dispatcha tú.

Próximos pasos