Mise au point Google Tag Manager

Discussion dans 'Google Analytics' créé par ortolojf, 14 Octobre 2019.

  1. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 848
    J'aime reçus:
    9
    Bonjour

    Après de nombreuses années avec Google Analytics, j'ai essayé hier de configurer Google Tag Manager pour mon site.

    Il n'y a pas d'erreurs avec le mode "Aperçu" de GTM, les données sont transmises mais sur Google Analytics il n'y a aucune visite.

    J'ai voulu mettre les paramètres suivants :

    - anonymizeIp : true
    - ForceSSL : true
    - Expires : 13 mois.

    Pour le Expires , voici ci-dessous les variables "Javascript personnalisé" :

    Code:
    
    /*****************************************************************************/
    1 – Créer une variable GTM « ID » pour récupérer le CID contenu dans le cookie  « _ga ».
    /*****************************************************************************/
    function()
    {
    var match = document.cookie.match('(?:^|;)\\s*_ga=([^;]*)');
    var raw = (match) ? decodeURIComponent(match[1]) : null;
    if (raw)
    {
    match = raw.match(/(\d+\.\d+)$/);
    }
    var gacid = (match) ? match[1] : null;
    if (gacid)
    {
    return gacid;
    }
    /*****************************************************************************/
    2 – Créer une variable JavaScript personnalisée « cookie _ga expires 13 months » pour calculer et retourner la nouvelle date d’expiration en secondes.
    /*****************************************************************************/
    function(){
    try {
        var ga = {{ID}};
        var ga_create= (Number(ga.split(".").pop()))*1000;
        var sec_expire = 60*60*24*30*13*1000;
        var t = new Date().getTime();
        var t0 = new Date(ga_create).getTime();
        var t1 = t0 + sec_expire;
        var t_diff = Math.round((t1-t)/1000);
        return t_diff;
    } catch(e){
          return sec_expire/1000;
        console.log(e);
    }
    }
    /*****************************************************************************/
      Configurer le paramètre « cookieExpires  » avec la nouvelle date d’expiration dans la variable « Paramètres Google Analytics » qui doit être appelée par toutes les balises Google Analytics.
    /*****************************************************************************/
    
    
    Cà marche, les données sont bien interprétées.

    A côté de çà, je filtre le déclencheur du type "Page vue" avec restriction : "Window Loaded"
    suivant la valeur d'une variable "Javascript personnalisée" , prenant en compte la valeur du cookie de gestion de cookies : 'CM_cookieConsent', qui est lu correctement, mais il semble que le filtre soit foireux.

    Je me perd un peu dans les filtres, actions du type : "set.model()" dans cette variable, il semble qu'elle ne soit pas prise en compte mais elle est censée rendre une fonction paramètre : "model."

    Je tiens à disposition cette variables programmée par mes soins.

    Merci beaucoup de votre aide.

    Amicalement.
     
  2. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 848
    J'aime reçus:
    9
    Rebonjour

    Voici ci-dessous la fonction censée filtrer la prise en compte des données de GTM.

    Je ne sais pas en fait, comment filtrer la transmission des data à Google, par cette fonction.

    {{GestionCookie}} est visible correct dans le mode "Aperçu".


    La fonction théoriquement, rend une fonction de paramètre (model), cette fonction dépend du paramètre Google Analytics : customTask.

    Tout est correct, pas d'erreur, mais les data ne passent pas.

    Comment faire ?

    Merci de votre aide.

    Respectueusement.


    Code:
    
    function() {
    return function (model) {
    OptInOut = 'opt-in';
    doNotTrackOption = window[doNotTrack] || window[navigator.doNotTrack] || window[navigator.webkitDoNotTrack] || window[navigator.msDoNotTrack];
      // Teste si CM_cookieConsent = '0' ou doNotTrackOption === 'yes' ou doNotTrackOption === '1'
    // Si oui, on supprime les paramètres du hit ce qui annule l'envoi.
    if ( doNotTrackOption === 'yes' || doNotTrackOption === '1' ) {
        // Analytics data not sent.
        model.set('displayFeaturesTask', null);
        model.set('sendHitTask', null);
    // Cookies explicitely forbidden.
    } else if ( {{GestionCookie}} === '0' ) {
        // doNotTrackOption
        // not affected or supported.
        // CM_cookieConsent == '0'.
        // Analytics data not sent.
        model.set('displayFeaturesTask', null);
        model.set('sendHitTask', null);
    // Cookies explicitely allowed.
    } else if ( {{GestionCookie}} === '1' ) {
        ;
        // doNotTrackOption
        // not affected or supported.
        // CM_cookieConsent == '1'.
        // Analytics data are being sent.
    } else {
        // doNotTrackOption
        // not affected or supported.
        // CM_cookieConsent == null.
        // Version opt-out :
        // Analytics data not sent.
        if ( OptInOut === 'opt-in' ) {
            model.set('displayFeaturesTask', null);
            model.set('sendHitTask', null);
        } else {
        // Version opt-in :
        // Analytics data not sent.
            model.set('displayFeaturesTask', null);
            model.set('sendHitTask', null);
        }
    }
    }
    }
    
    
     
  3. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 848
    J'aime reçus:
    9
    Voili, voilou

    Je touche au but.

    Les data sont envoyées quand il faut, et ne sont pas envoyées quand il ne faut pas.

    En mode "Aperçu" j'ai ce message : "No tags were evaluated because there was no Event in the selected Message."

    J'ai une balise de type "Google Analytics - Universal Analytics", avec comme déclencheur : "All Pages", et comme Exceptions les cas où le DoNotTrack est activé, et les Cookies interdits.

    Quoi faire pour un Event ?

    Le "All Pages" n'est pas suffisant ?

    Merci beaucoup.
     
  4. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 848
    J'aime reçus:
    9
    Bonjour

    Mon cookieExpire est égal à : 33695869.

    Est-ce que c'est correct ?

    Merci beaucoup de vos réponses.
     
  5. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 848
    J'aime reçus:
    9
    Je vous demande pardon

    Cà marche.

    Je m'étais trompé d'identificateur Google Analytics.

    Et puis, j'avais mis comme cookieExpires :

    nbre de secondes 13 mois + ( dernier champ de _ga ) - new Date.getTime().

    Maintenant c'est : nbre de secondes 13 mois.

    Est-ce correct ?

    Maintenant je vois sur GA les visites en temps réel.

    Respectueusement.
     
  6. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 848
    J'aime reçus:
    9
    Pour infos...

    Pour disposer du cookie _ga c'est facile :

    HTML:
    
    <script>
    function getCookie(name)
    {
        var nameEQ = name + '=';
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
    }
    </script>
    <script>
    window.dataLayer = window.dataLayer || [];
    dataLayer.push({
    'userID' : 'unkwown',
    'visitorID' : getCookie('_ga')
    });
    </script>
    
    
    Après, vous avez dans la "variable de couche de données" : visitorID le cookie _ga , et vous pouvez l'interpréter dans GTM.

    Pour ce qui est de : "navigator.NotTrack" éventuel, c'est une "variable Javascript globale".

    Pour le reste, un cookie tel que : cookieConsent est un "cookie propriétaire".

    On peut jongler avec les variables "Javasript personnalisée", les déclencheurs et les exceptions.

    Je déclenche une balise de type "Google Analytics - Universal Analytics" avec un déclencheur '"All Pages" de type "page vue", et les deux exceptions : cookieConsent == 0
    , et NotTrack != 0

    Pour NotTrack, 0 est la valeur par défaut si null, false ou 0.

    C'est vrai que je prend pas en compte la valeur "no" équivalente qui dans mon cas est != 0.

    Est-ce grave ?

    Amicalement.
     
Chargement...
Similar Threads - Google Tag Manager Forum Date
Récapitulatif Outils utiles pour : Google Analytics, Google Tag Manager et d'autres Google Analytics 16 Septembre 2018
Google APIs : AdSense - Search Console - TagManager AdSense 7 Août 2018
Google Tag Manager sur mon site : pas de données dans GG Analytics Google Analytics 24 Juillet 2017
Tracking des formulaire de contact avec Google tag Manager Google Analytics 21 Mai 2017
Google Analytics et Tag Manager Google Analytics 20 Avril 2017
Vitesse de chargement des tags. Google Tag Manager est-il l'outil idéal ? Référencement Google 14 Mars 2017
Faq google tag manager Google Analytics 16 Janvier 2017
Problème avec Google Tag Manager Google Analytics 13 Janvier 2017
Tracker liens sortants avec Google Tag Manager Google Analytics 20 Octobre 2016
Un expert Google Tag Manager pour m'aider ? Google Analytics 30 Avril 2016
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice