2012-11-12 4 views
3

J'ai deux profils Google Analytics dans mon compte. Un, pour mon compte de production avec l'ID de la propriété: UA-XXXXXXXX-1. Mon second profil est destiné à mon compte de test et son ID de propriété est: UA_XXXXXXXX-2.Transmission de données de Google Tag Manager à Google Analytics

Dans le gestionnaire de balises, mon balise "-1" est déclenchée si mon URL contient "mydomain.com" et que ma balise "-2" est activée si l'URL inclut "mydomain.it".

Le déclenchement de l'étiquette GA avec cette configuration fonctionne correctement. Mes données de mise en scène sont séparées de la production et je suis en mesure de tester les pages vues GA de base.

Ce qui est maintenant nécessaire, c'est la possibilité de séparer les événements. Actuellement, j'appelle setAccount avant chaque suivi d'événement (je sais que cela peut être en appel unique).

_gaq.push(['_setAccount', 'UA-XXXXXXXX-1']); 
_gaq.push(['_trackEvent', 'Videos', 'Play', 'Gone With the Wind']); 

Ce que je voudrais faire est d'appeler la méthode _setAccount et passer dynamiquement la valeur de Google Gestionnaire de balises où je mets l'ID de propriété en fonction de l'URL.

Y at-il un moyen de faire quelque chose comme ceci (ou quelque chose de mieux) afin que je puisse définir le compte en fonction d'une règle Tag Manager?

_gaq.push(['_setAccount', [Tag Manager Property ID] ]); 

J'apprécie tout conseil/aide que vous avez.

Merci!

Répondre

2

Le fait que l'OMI transmette des données du gestionnaire d'étiquettes au site Web, en dehors de toutes les difficultés pratiques, irait totalement à l'encontre de l'objectif d'avoir un code de chargement asynchrone.

Vous "poussez" des méthodes sur une pile de sorte que vous pouvez les traiter lorsque le code a chargé à un moment indéterminé dans le futur. Si vous voulez récupérer l'identifiant de compte du code, vous devrez attendre qu'il soit chargé pour que vous perdiez tous les avantages du chargement asynchrone.

Pour autant que je peux dire (ne l'ai pas utilisé gestionnaire de balises largement encore) la bonne façon serait de pousser les données d'événement à la variable « couche de données »:

dataLayer.push({'myevent': 'mylabel'}); 

et utiliser la variable (comme dataLayer.myevent) dans le code déployé via le gestionnaire de variables (vous effectuez donc le suivi des événements dans le code spécifique au domaine).

Ceci est décrit à: https://developers.google.com/tag-manager/devguide

Il est en fait un modèle de suivi événement pour Google Analytics dans le gestionnaire de balise. Pour la valeur de l'événement, vous pouvez créer une nouvelle macro et la définir sur une variable dataLayer. Ajoutez ensuite votre règle spécifique au domaine et vous devriez tous être définis.

+0

Ah. Cela a du sens et cela clarifie un certain nombre de choses pour moi. Oui, dataLayer est parfaitement logique pour ce que j'essaie de faire. Je vous remercie! – sleestak

+0

bzw. la clé d'un événement doit simplement être "event" (dataLayer.push ({'event': 'mylabel'});), voir ici: http://stackoverflow.com/questions/12711240/google-analytics-tag- manager-fail –

+0

Je viens de poster une question similaire. Est-il possible de définir une règle complètement dans l'interface GTM pour contourner l'informatique et le faire sans eux? – MMMdata

Questions connexes