Conditionnement d'un script distant via un Tag Manager

La méthode de conditionnement décrite à la page précédente est utilisable via un Tag Manager et la méthode reste la même à ceci près qu'il faut déclencher manuellement du traitement de la pile via la fonction dédiée suivante.

<script>try{Sddan.cmp.triggerTM();}catch(e){}</script>

Important : Cette méthode permet une grande simplification technique des conditionnements. Néanmoins, il est important de garder en tête qu'une expertise juridique est nécessaire pour déterminer comment les réaliser vous-mêmes.

Pour chaque tag/balise, il faut :

  • Étudier l’éventuelle présence de traceurs non exemptés (cookies, indexdb, local storage…) (Directive ePrivacy)

  • Évaluer les traitements de données personnelles et le cas échéant les finalités poursuivies par vos partenaires et leurs bases légales respectives (RGPD)

  • Déterminer si le tag/balise est automatiquement pris en charge par vos partenaires via les API de la CMP (exemple : le « Consent Mode » de Google et de Microsoft Bing)

N'hésitez pas à solliciter nos équipes pour que nous paramétrions ces conditionnements pour vous : https://cmp.docs.sirdata.net/gestion-des-scripts/prestations-conditionnement-tags

Méthode

Procédez comme décrit à la page précédente mais ajoutez la fonction ci-dessus :

  • Soit à chaque tag que vous souhaitez conditionner

  • Soit une seule fois en tant que dernier script chargé par le Tag Manager

<script src="https://www.exemple.com/script.js"></script>

devient dans le Tag Manager :

<script data-cmp-src="https://www.exemple.com/script.js"></script>
<script>try{Sddan.cmp.triggerTM();}catch(e){}</script>

Si le tag est inséré en JavaScript :

<script>
(function() {
    var s = document.createElement('script');
    s.type = 'text/javascript';
    s.async = true;
    s.src = 'https://www.example.com';
    var _head = document.head || document.getElementsByTagName("head")[0];
    _head.appendChild(s);
})();
</script>

devient dans le Tag Manager :

<script>
(function() {
    var s = document.createElement('script');
    s.type = 'text/javascript';
    s.async = true;
    s.setAttribute('data-cmp-src','https://www.example.com');
    var _head = document.head || document.getElementsByTagName("head")[0];
    _head.appendChild(s);
})();
</script>
<script>try{Sddan.cmp.triggerTM();}catch(e){}</script>

Cas spécifique Google Tag Manager

Il est possible de conditionner rapidement et facilement chaque tag ainsi qu'expliqué ci-dessus via l'attribut data-cmp-src et de ne déclencher qu'une seule fois la fonction Sddan.cmp.triggerTM() en dernier script avec une priorité inférieure.

pour chaque script cochez "Compatible avec document.write"
<script data-cmp-src="https://www.example2.com/script.js"></script>
<script data-cmp-src="https://www.example3.com/script.js"></script>
<script data-cmp-src="https://www.exampleX.com/script.js"></script>
<script>try{Sddan.cmp.triggerTM();}catch(e){}</script>

Ce nouveau tag ajouté doit être paramétré comme suite dans GTM :

Paramétrage de la fonction de conditionnement en priorité -10

Dernière mise à jour

Cet article vous a-t-il été utile ?