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.

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 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.

Tag 1
Tag 1
<script data-cmp-src="https://www.example2.com/script.js"></script>
Tag 2
Tag 2
<script data-cmp-src="https://www.example3.com/script.js"></script>
Tag X
Tag X
<script data-cmp-src="https://www.exampleX.com/script.js"></script>
Dernier tag
Dernier tag
<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