IÉSEG · Voir en ligne
DataLayer & Tracking (GTM/GA)
Mise en place d’une dataLayer robuste sur WordPress multi-langue : événements standardisés, contexte programme/spécialité, et tracking fiable des CTA et formulaires.
WordPressPHPJavaScriptGTM/GA
- Année
- 2025
- Stack
- WordPress · PHP · JavaScript · GTM/GA
- Type
- Réalisation
- Rôle
- Dev front + UX
Aperçu

Conception & réalisation
Problèmes rencontrés, décisions UX et livrables.
Problèmes identifiés
4 points- 1.Standardiser les événements sur un site WordPress multi-langue
- 2.Déduire programme/spécialité à partir d’URLs hétérogènes
- 3.Gérer du DOM dynamique (CTA injectés, formulaires)
- 4.Assurer un tracking formulaire fiable (succès réel) + anti-doublon + hash
Actions réalisées
4 livrables- 1.Core mutualisé : init event + logger + utilitaires + observeDOM
- 2.Script spécifique : tracking CTA/brochure + rules par page + redirection safe
- 3.Mapping JSON maintenable (program/speciality) basé sur URL
- 4.Tracking Ninja Forms : snapshot + hooks + MutationObserver + SHA-256
Code
javascriptInit dataLayer + logger unifié
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};
Suite du parcours
Accéder aux autres projets ou me contacter.