32 votes

Google Analytics pageTracker n'est pas défini?

Un peu confus ... J'essaie de suivre les liens mailto sur lesquels l'utilisateur a cliqué, mais le message "pageTracker n'est pas défini" s'affiche constamment. J'ai le code suivant juste avant la balise end body ()

 <script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-000000']); // This is my account number, I have added the zeros in this editor
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>
 

Ensuite, je l'utilise dans mes liens mailto

 <a href="mailto:hello@mydomain.co.uk" onClick="javascript:pageTracker._trackPageview('/mailto/hello');">hello@mydomain.co.uk</a>
 

Je ne vois pas pourquoi ça ne marche pas? Toute aide serait appréciée

71voto

joshperry Points 17727

Le nouveau code Google Analytics Async (que vous utilisez) fonctionne un peu différemment du code non Async. Chaque fois que vous souhaitez appeler une méthode sur pageTracker, vous envoyez simplement un "message" dans la file "_gaq".

 <a href="mailto:hello@mydomain.co.uk" onClick="_gaq.push(['_trackPageview', '/mailto/hello'])">hello@mydomain.co.uk</a>
 

Bien que le suivi d'un lien mailto puisse mieux fonctionner en tant qu'événement:

 <a href="mailto:hello@mydomain.co.uk" onClick="_gaq.push(['_trackEvent', 'mailto', 'home'])">hello@mydomain.co.uk</a>
 

Pour plus d'informations, consultez le Guide de l'utilisateur du suivi async .

19voto

Merlinox Points 311

Nous pouvons aussi ajouter:

 //mantain syntax between old and new asynch methods
//http://code.google.com/apis/analytics/docs/tracking/asyncUsageGuide.html#Syntax
function _pageTracker (type) {
    this.type = type;
    this._trackEvent = function(a,b,c) {
       _gaq.push(['_trackEvent', a, b, c]);
    };
}

var pageTracker = new _pageTracker();
 

dans le nouveau code pour conserver l'ancien code dans les pages.

3voto

Nanda Points 31

Voici le code:

 onClick="_gaq.push(['_trackEvent', 'pdf', 'download', '/pdf/myPdf'])">myPdf</a>
 

1voto

Osura Points 11

J'avais besoin d'un moyen de télécharger des fichiers PDF aussi et voici ce que j'ai utilisé:

 <a href="http://www.domain.com/assets/downloads/filename.pdf" target="_blank" onClick="_gaq.push(['_trackEvent', 'Downloads', 'Download', 'Price Brochure PDF'])">Download Brochure</a>
 

Pour plus d'informations sur _trackEvent , voici la page API Doc

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X