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>

Cette fonctionnalité étant intégrée au sein de la CMP, elle ne fonctionnera que si la CMP est chargée sur la page.

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>

L'ensemble des fonctionnalités avancées décrites plus loin est disponible pour les tags conditionnés dans votre page principale ou via le Tag Manager.

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.

Attention : il s'agit de la méthode simplifiée, utile pour les balise HTML seulement. Si vous cherchez à conditionner des balises automatisées de Google Tag Manager (Analytics, Ads...) en plus de balises HTML merci de vous reporter à la section suivante "Conditionnement d'une balise via Google Tag Manager"

Attention : vous devez IMPERATIVEMENT cocher la case "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 :

Dernière mise à jour