samedi, juin 05, 2010

Tracking des clics vers des sites externes avec Google analytics

Voici un rapide billet pour remédier à un petit problème rencontré récemment avec le tracking des clics sur des liens externes dans Google analytics. En effet dans l'aide Google Analytics les explications données ne sont malheureusement pas à jour (voir ici) et le code de remplacement proposé ici a lui aussi généré des erreurs.

Le code standard proposé actuellement est :


<script type="text/javascript">

var _gaq = _gaq [];
_gaq.push(['_setAccount', 'UA-XXXXXXXX-X']);
_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>


L'explication donnée par Google sur le tracking des liens externes ne fonctionnera donc pas et génèrera une erreur du type "_gat is not defined" ou "_gat est indéfini". En utilisant la deuxième solution proposée par Google on se retrouve avec une erreur : "urchinTracker is not defined"

Afin de continuer à tracker les clics sur les liens externes dans Google analytics il vous suffit d'ajouter ce code dans vos liens en adaptant les champs en vert.

<a onclick="_gaq.push(['_trackPageview', '/lienexterne/nomdusiteexterne']);" href=http://www.nomdusiteexterne.com >nomdusiteexterne</a>

Les clics vers les pages externes seront alors facilement récupérables et apparaitront comme des pages consultées.