Scripts (injection de JavaScript personnalisée)
Configurer, tester et publier les scripts de l'organisation globale qui s'exécutent dans Pages et peuvent lire des variables au niveau organisation.
Dans cet article, vous allez gérer le JavaScript personnalisé qu'OmniLab peut charger dans Pages depuis l'organisation globale. Les administrateurs configurent et gouvernent ces scripts de manière centralisée, tandis que les développeurs doivent écrire et relire le code lui-même.
La rédaction technique se trouve ailleurs
Besoin du guide d'implémentation côté code ? Consultez Écrire des scripts d'organisation. Cette page se concentre uniquement sur le flux d'administration pour ajouter, activer et gouverner les scripts.
Prérequis
- Vous disposez d'un accès administrateur sur l'organisation globale.
- Le code du script a été validé par le bon responsable technique.
- Vous avez un environnement de test ou de préproduction disponible.
- Vous savez comment désactiver rapidement le script s'il provoque un problème.
Comment les scripts se comportent
Les scripts sont configurés uniquement dans l'organisation globale, mais ils peuvent tout de même lire les valeurs de l'organisation courante. Cela signifie qu'un même script global peut s'adapter à chaque organisation en lisant window.omnilab?.group?.configuration?.variables.
Les modifications de script ne sont prises en compte dans Pages qu'après une nouvelle publication de la campagne. Si vous enregistrez un script sans republier la campagne, l'expérience en direct continue d'utiliser la version précédente.
Référence des champs
| Champ | Valeurs ou exemple | Pourquoi c'est important |
|---|---|---|
| Name | Google Tag Manager loader | Aide les administrateurs à identifier rapidement le rôle du script |
| Script Context | All, Non iframe only, Iframe only | Limite l'endroit où le script doit s'exécuter |
| Trigger Event | Visit, Registration | Contrôle le moment où le script est déclenché |
| Is Active? | Yes ou No | Permet de désactiver un script sans le supprimer |
| Script Code | JavaScript personnalisé | Contient le corps du script que Pages exécutera |
Configurer un script
Ouvrir l'onglet Scripts
Basculez vers l'organisation globale, ouvrez Paramètres généraux, puis sélectionnez Scripts.

Ajouter une nouvelle entrée de script
Cliquez sur Add Script, puis complétez le formulaire :
- Name
- Script Context
- Trigger Event
- Is Active?
- Script Code

Enregistrer la configuration et choisir le bon contexte
Choisissez le Script Context qui correspond à l'endroit où le script doit s'exécuter :
| Script Context | Quand l'utiliser |
|---|---|
All | Le même script doit s'exécuter à la fois dans les Pages en iframe et hors iframe |
Non iframe only | Le script doit s'exécuter uniquement dans des Pages autonomes, hors diffusion embarquée en iframe |
Iframe only | Le script doit s'exécuter uniquement quand Pages est intégré dans une iframe |
Le Trigger Event détermine le moment où OmniLab déclenche le script. Utilisez Visit pour un suivi de chargement de page ou une initialisation qui doit se produire dès l'ouverture de Pages. Utilisez Registration quand le script doit se déclencher seulement après la fin d'une inscription et quand les données visiteur ont plus de chances d'être déjà disponibles.
Publier la campagne avant de tester
Après avoir modifié un script, publiez la campagne que vous voulez tester. Enregistrer uniquement la configuration du script ne suffit pas pour que Pages en direct récupère la dernière version.
La publication compte vraiment
Si vous modifiez un script et que vous vous contentez d'enregistrer les paramètres de l'organisation globale, la campagne ne reçoit pas encore cette modification. Republiez la campagne concernée ; sinon l'expérience en direct continue d'utiliser la version précédente.
Tester avant d'activer plus largement
Activez d'abord le script dans un environnement sûr, puis ouvrez des expériences Pages représentatives pour cette organisation et vérifiez que la navigation, les formulaires, le consentement, l'analytics et les CTA fonctionnent toujours.
Activer, désactiver, modifier ou retirer selon le besoin
Une fois validé, laissez le script actif uniquement là où il est nécessaire. Si le comportement change, mettez le script à jour ou désactivez-le jusqu'à ce que le problème soit compris.
Utiliser les variables au niveau organisation dans les scripts
Un script global peut tout de même se comporter différemment selon l'organisation en lisant les valeurs exposées sur l'objet de page OmniLab.
La plupart des variables au niveau organisation utilisent ce préfixe commun dans le script :
window.omnilab?.group?.configuration?.variables?.Ajoutez ensuite l'un de ces noms de variable après ce préfixe :
| Ce que vous voulez lire | Nom de variable dans le script | Exemple de résultat |
|---|---|---|
| Pays | country | France |
| Surcharge de langue locale | centerLanguage | French |
| Code locale | locale | fr_FR |
| Région | region | Europe |
Ajoutez un fallback dans le script lorsque c'est nécessaire, par exemple centerLanguage || 'English' ou locale || 'en_US'.
Par exemple :
window.omnilab?.group?.configuration?.variables?.country
window.omnilab?.group?.configuration?.variables?.centerLanguage || 'English'
window.omnilab?.group?.configuration?.variables?.locale || 'en_US'
window.omnilab?.group?.configuration?.variables?.regionD'autres valeurs utiles existent en dehors de l'objet des variables d'organisation :
window.omnilab?.group?.uniqueKey
window.location.pathname| Ce que vous voulez lire | Exemple de résultat |
|---|---|
| Clé de l'organisation courante | paris-centre |
| Chemin de page courant | /summer-experience |
Exemples de scripts
Chargeur de base Google Tag Manager
Utilisez cet exemple quand votre équipe veut que GTM soit disponible avant d'émettre d'autres événements.
<script>
(function (w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start': new Date().getTime(),
event: 'gtm.js',
});
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'GTM-AB12C3D');
</script>Événement de vue avec variables d'organisation
Ce modèle pousse un événement de vue et l'enrichit avec des variables au niveau organisation.
<script>
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
event: 'view_page',
country: window.omnilab?.group?.configuration?.variables?.country,
region: window.omnilab?.group?.configuration?.variables?.region,
language:
window.omnilab?.group?.configuration?.variables?.centerLanguage || 'English',
locale:
window.omnilab?.group?.configuration?.variables?.locale || 'en_US',
page: window.location.pathname,
page_type: 'Experience',
organisation_key: window.omnilab?.group?.uniqueKey?.toUpperCase(),
surface: 'Pages',
});
</script>Événement d'inscription avec dataLayer.push
Utilisez cet exemple quand vous voulez émettre un événement de conversion après une inscription.
<script>
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
event: 'registration_complete',
organisation_key: window.omnilab?.group?.uniqueKey?.toUpperCase(),
country: window.omnilab?.group?.configuration?.variables?.country,
locale:
window.omnilab?.group?.configuration?.variables?.locale || 'en_US',
page: window.location.pathname,
registration_status: 'complete',
});
</script>Gardez les payloads analytics génériques
Privilégiez le contexte d'organisation, de locale, de page et d'événement, sauf si votre plan de mesure exige réellement davantage. Si une destination attend des valeurs transformées ou filtrées, appliquez cette logique dans votre script relu avant l'envoi.
Déclencheur d'inscription Meta Pixel
Utilisez ce modèle quand le script de base Meta Pixel est déjà présent et qu'il vous suffit de déclencher un événement depuis OmniLab Pages.
<script>
if (typeof window.fbq === 'function') {
window.fbq('track', 'CompleteRegistration', {
organisation_key: window.omnilab?.group?.uniqueKey,
country: window.omnilab?.group?.configuration?.variables?.country,
locale:
window.omnilab?.group?.configuration?.variables?.locale || 'en_US',
page: window.location.pathname,
});
}
</script>Checklist opérationnelle
- Vérifiez que le script ne bloque pas le chargement de page ni les actions utilisateur.
- Testez le consentement, la soumission des formulaires, les parcours de récompense et les redirections sur de vrais parcours de campagne.
- Examinez avec soin l'accès au DOM et la collecte de données.
- Gardez des notes de version pour retrouver rapidement ce qui a changé si un problème survient.
Un script non testé peut casser Pages ou exposer des données
Comme ces scripts s'exécutent dans le contexte Pages, côté utilisateur final, un mauvais script peut affecter toutes les campagnes de l'organisation. Testez toujours avant d'activer en production.
Pour aller plus loin
Écrire des scripts d'organisation
Aller à l'article orienté développeur pour la mise en oeuvre technique côté code.
Variables au niveau organisation
Utiliser les variables d'organisation pour adapter un même script global à plusieurs organisations.
Paramètres de l'organisation (valeurs par défaut générales)
Revoir les autres paramètres partagés qui influencent le comportement de Pages par organisation.
Variables au niveau organisation
Stocker des paires clé-valeur réutilisables propres à chaque organisation pour les modèles, les add-ons et les expériences Pages.
Paramètres de domaine de l'organisation
Gérer l'unique sous-domaine Pages stocké sur une organisation et comprendre les limites de l'écran Domaine actuel.