DataLayer & Tracking (GTM/GA).
Standardized GTM/GA dataLayer for a multilingual WordPress site: unified events, reliable CTA and form tracking.
wordpressphpjavascriptgtm/ga

Challenges
- 01.Standardize events on a multilingual WordPress site
- 02.Infer program/specialty from heterogeneous URLs
- 03.Handle dynamic DOM (injected CTAs, forms)
- 04.Ensure reliable form tracking (real success) + de-duplication + hash
Solutions
- 01.Shared core: init event + logger + utilities + observeDOM
- 02.Specific script: CTA/brochure tracking + per-page rules + safe redirect
- 03.Maintainable JSON mapping (program/specialty) based on URL
- 04.Ninja Forms tracking: snapshot + hooks + MutationObserver + SHA-256
Init dataLayer + unified loggerjavascript
1window.dataLayer = window.dataLayer || [];2document.addEventListener('DOMContentLoaded', function () {3 const initEvent = {4 event: "initialization_page",5 page_language: wpDataLayer.page_language || '',6 page_type: wpDataLayer.page_type || '',7 page_program: wpDataLayer.page_program || '',8 page_speciality: wpDataLayer.page_speciality || ''9 };10 window.dataLayer.push(initEvent);11 console.log('✅ Event - initialization_page (core):', initEvent);12});1314window.logDataLayerEvent = function(label, data) {15 console.log(`✅ Event - ${label}:`, data);16 window.dataLayer.push(data);17};
→ NextOther projects