Log eenvoudig in met je account. Of wanneer je nog niet geregistreerd bent, klik je op Maak een account.
* en pusht de JSON naar window.dataLayer. * Werkt ook voor AJAX responses (roep aan met container element). */ function ga4ConsumePayloads(rootEl) { rootEl = rootEl || document; var nodes = rootEl.querySelectorAll('script.ga4-payload[type="application/json"]'); if (!nodes || !nodes.length) return; window.dataLayer = window.dataLayer || []; for (var i = 0; i < nodes.length; i++) { var node = nodes[i]; var jsonText = node.textContent || node.innerText || ''; if (!jsonText) continue; try { var payload = JSON.parse(jsonText); // dedupe: voorkom dubbel vuren (handig bij back/forward of dubbele render) var key = payload && payload._dedupe_key ? String(payload._dedupe_key) : ''; if (key) { window.__ga4Dedupe = window.__ga4Dedupe || {}; if (window.__ga4Dedupe[key]) { // al verwerkt node.parentNode && node.parentNode.removeChild(node); continue; } window.__ga4Dedupe[key] = true; delete payload._dedupe_key; } window.dataLayer.push(payload); } catch (e) { // als er JSON fout is wil je dat zien tijdens bouwen if (window.console && console.warn) { console.warn('GA4 payload JSON parse error', e, jsonText); } } // payload node opruimen zodat hij niet per ongeluk opnieuw verwerkt wordt node.parentNode && node.parentNode.removeChild(node); } } // Bij normale page load: consume alles wat in de HTML staat document.addEventListener('DOMContentLoaded', function(){ ga4ConsumePayloads(document); });