Les commandes passées entre le 05/08 et 09/08 seront éxpédiées le 10/08
🎁 Livraison offerte dès 59€ (39€ sur Lyon) - Pick-up gratuit à notre adresse* 🎁

Panier

Votre panier est actuellement vide.
Vérifié indépendamment
3133 avis
(function() { // Attendre que Klaviyo (_learnq) soit chargé function sendKlaviyoCartEvent(cartData) { if (typeof window._learnq === "undefined") return setTimeout(function() { sendKlaviyoCartEvent(cartData); }, 500); window._learnq.push(['track', 'Cart URL Generated', cartData]); console.log("Klaviyo Cart Event Sent:", cartData); } // Récupération des infos panier et client depuis les inputs WooCommerce function getCartAndCustomerData() { // Tu peux passer ces données via PHP pour fiabilité maximum si besoin var cartKey = localStorage.getItem('persistent_cart_key') || ''; var cartUrl = window.location.origin + '/panier/' + cartKey; // Infos client var email = document.querySelector('#billing_email') ? document.querySelector('#billing_email').value : ''; var firstName = document.querySelector('#billing_first_name') ? document.querySelector('#billing_first_name').value : ''; var lastName = document.querySelector('#billing_last_name') ? document.querySelector('#billing_last_name').value : ''; var phone = document.querySelector('#billing_phone') ? document.querySelector('#billing_phone').value : ''; // Infos panier via un dataLayer ou un JS personnalisé (WooCommerce ne fournit pas tout en JS natif) // Idéalement, tu ajoutes le détail panier en JSON via un data-attribute sur body ou par une variable PHP exportée // Exemple ci-dessous : var cartDataObj = window.jidaCartData || null; // window.jidaCartData doit être généré côté PHP pour exposer le détail du panier var items = []; var total = 0; var itemCount = 0; if (cartDataObj && cartDataObj.items) { items = cartDataObj.items; items.forEach(function(item) { total += parseFloat(item.price) * parseInt(item.quantity); itemCount += parseInt(item.quantity); }); } // Construction de l'objet à envoyer à Klaviyo return { CartURL: cartUrl, CartKey: cartKey, value: total, ItemCount: itemCount, Items: items, Currency: cartDataObj ? cartDataObj.currency : 'EUR', CustomerName: (firstName + ' ' + lastName).trim(), CustomerEmail: email, CustomerPhone: phone }; } // Déclenche l'envoi au chargement du checkout ou à chaque modification des champs function setupKlaviyoCartEvent() { // Premier envoi rapide setTimeout(function() { var data = getCartAndCustomerData(); sendKlaviyoCartEvent(data); }, 2000); // Réenvoi à chaque changement dans les champs du client document.addEventListener('change', function(e) { if (e.target && e.target.id && e.target.id.startsWith('billing_')) { var data = getCartAndCustomerData(); sendKlaviyoCartEvent(data); } }); } // À toi d'injecter la variable window.jidaCartData côté PHP : // // Lance le script si c'est la page de checkout if (window.location.pathname.indexOf('/finalisation-commande') !== -1 || document.body.classList.contains('woocommerce-checkout')) { setupKlaviyoCartEvent(); } })();