0

我在一个域中设置了多个 Google Analytic 帐户。该站点具有在第一个配置文件中正确跟踪的不同事件。但是……我希望将事件传递给每个帐户,而无需为每个配置文件创建 onclick 事件。

<script type="text/javascript">
var _gaq = _gaq || [];

_gaq.push(
    ['_setAccount', 'UA-xxxxxxx30-1'], ['_trackPageview'],  ['_gat._anonymizeIp'],
    ['b._setAccount', 'UA-xxxxxxx33-1'], ['_trackPageview'], ['_gat._anonymizeIp'],
    ['c._setAccount', 'UA-xxxxxxx76-1'], ['_trackPageview'], ['_gat._anonymizeIp']
);


(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);
})();

感谢您的支持迈克

4

1 回答 1

0

首先,您粘贴的代码片段不正确。每个跟踪器之后的 _trackPageview 调用将只为第一个跟踪器对象触发 _trackPageview。此外,您的 _anonymizeIp 设置被错误地使用,因为它需要在第一个 _trackPageview 之前出现,并且它适用于所有跟踪器对象。

更正的语法:

_gaq.push(
    ['_setAccount', 'UA-xxxxxxx30-1'], ['_gat._anonymizeIp'], ['_trackPageview'],
    ['b._setAccount', 'UA-xxxxxxx33-1'], ['b._trackPageview'],
    ['c._setAccount', 'UA-xxxxxxx76-1'], ['c._trackPageview']
);

对于事件跟踪,您可以创建一个函数,在一个函数调用中对所有跟踪器进行事件跟踪调用。就像是:

function gaTrackEventAllTrackers(category,action,optLabel,optValue,optInteraction) {
    _gaq.push(
        ['_trackEvent',category,action,optLabel,optValue,optInteraction],
        ['b._trackEvent',category,action,optLabel,optValue,optInteraction],
        ['c._trackEvent',category,action,optLabel,optValue,optInteraction]
    );
}

然后只需在您的代码或 onclick 中调用此函数。

于 2012-05-21T16:00:44.980 回答