每页两个Google Analytics分析帐户

时间:2012-12-04 22:54:19

标签: javascript google-analytics

  

可能重复:
  google analytics - multiple trackers on one page (cookie conflict)

我在互联网上搜索过这个问题,但是找不到我要找的答案。

我开发了一个博客,其中包含一些特殊功能。每个用户在注册时都会获得自己的子域名。

一切都是免费的,但广告。我目前使用谷歌分析来跟踪访客总数和综合浏览量。

我开发了一个小型计数器,以便每个用户可以查看他们拥有的访问者和网页浏览量,但是对于更详细的信息,他们需要使用他们自己的“谷歌分析”,或者他们想要使用的东西。

因此。我现在使用的代码:

<script type="text/javascript">
        var _gaq = _gaq || [];
        _gaq.push(['_setAccount', 'UA-xxxxxx1-1']);
        _gaq.push(['_setDomainName', 'sub.domain.com']);
        _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>

我不知道每个用户将使用哪种类型的分析服务,我让他们在HEAD中插入自己的代码。 那么,如果他们使用谷歌分析,我们在谷歌分析的两个帐户将获得正确的访问者数量?代码将是:

<script type="text/javascript">
        var _gaq = _gaq || [];
        _gaq.push(['_setAccount', 'UA-xxxxxx1-1']);
        _gaq.push(['_setDomainName', 'sub.domain.com']);
        _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>
<script type="text/javascript">
        var _gaq = _gaq || [];
        _gaq.push(['_setAccount', 'UA-xxxxxx2-1']);
        _gaq.push(['_setDomainName', 'sub.domain.com']);
        _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>

或者我必须这样做:

_gaq.push(
    ['_setAccount', 'UA-XXXXXXXX-1'],
    ['_trackPageview'],
    ['b._setAccount', 'UA-XXXXXXXX-2'],
    ['b._trackPageview'] 
);

两个跟踪器都在同一个内。 ??

谢谢!

1 个答案:

答案 0 :(得分:2)

这是一个例子而且有效。我的代码也一样。

_gaq.push(
  ['_setAccount', 'UA-XXXXX-1'],
  ['_trackPageview'],
  ['b._setAccount', 'UA-XXXXX-2'],
  ['b._trackPageview']
);