Google analytics 对一组网站进行单独和汇总跟踪

Google analytics 对一组网站进行单独和汇总跟踪,google-analytics,Google Analytics,比如说,我拥有并控制几个与水果相关的网站,这些网站都有域和子域,我想单独或集体跟踪它们,以获得总的vistor值。使用新的异步方法构造分析脚本设置的正确方法是什么 假设我有这些域: apple.com one.pear.com one.peach.com cherry.com other.cherry.com www.watermelon.com 我想知道我是否做得对,以及在第一次推送时在域部分中放置什么: 我目前拥有的: XXXXX-总跟踪代码 YYYYY-个人跟踪代码 <script

比如说,我拥有并控制几个与水果相关的网站,这些网站都有域和子域,我想单独或集体跟踪它们,以获得总的vistor值。使用新的异步方法构造分析脚本设置的正确方法是什么

假设我有这些域:

apple.com
one.pear.com
one.peach.com
cherry.com
other.cherry.com
www.watermelon.com
我想知道我是否做得对,以及在第一次推送时在域部分中放置什么:

我目前拥有的:

XXXXX-总跟踪代码 YYYYY-个人跟踪代码

<script>
  _gaq.push(
    ['_setAccount', 'XXXXX'],
    ['_setDomainName', 'whatdoiputhere?'],
    ['_trackPageview']);

  _gaq.push(
    ['b._setAccount', 'YYYYY'],
    ['b._setDomainName', '[current_domain(just domain)]'],
    ['b._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>

_推(
[“设置帐户”,“XXXXX”],
[u setDomainName',“Whatdoiputher?”,
[“轨迹页面视图]);
_推(
[b._setAccount',yyyy'],
['b._setDomainName','[当前_域(仅域)],
['b._trackPageview']
);
(功能(){
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);
})();

两个跟踪器必须使用完全相同的_setDomainName。这必须是代码当前所在的域,您应该只使用域而不是子域。例如,对于cherry.com和other.cherry.com,您应该使用相同的跟踪代码:

<script>
  _gaq.push(
    ['_setAccount', 'XXXXX'],
    ['_setDomainName', 'cherry.com'],
    ['_trackPageview']);

  _gaq.push(
    ['b._setAccount', 'YYYYY'],
    ['b._setDomainName', 'cherry.com'],
    ['b._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>

_推(
[“设置帐户”,“XXXXX”],
[u setDomainName',cherry.com'],
[“轨迹页面视图]);
_推(
[b._setAccount',yyyy'],
['b._setDomainName','cherry.com'],
['b._trackPageview']
);
(功能(){
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);
})();
此外,如果要在其中一个跟踪器中进行任何其他自定义,则必须在所有跟踪器中进行完全相同的配置

每个跟踪器将创建一组cookie,并使用相同的_setDomainName共享同一组cookie。这会更好,因为您减少了cookie的数量,但也很棘手,因为两个跟踪器必须兼容才能共享相同的cookie,因此您应该在两个cookie中使用相同的配置

如果您采取不同的做法,您可能会出现这样一种情况:跟踪器共享一个cookie,但他们在设置上不一致,并且可能会相互重置cookie,从而导致跟踪器完全损坏。因为它是如此的不稳定,谷歌表示,拥有多个跟踪器是不受支持的用例,但如果你遵循上述规则,这当然是可能的

如果您对_setDomainName使用不同的配置,那么最终可能会出现这样的情况:每个跟踪器使用不同的cookie集,这很好,因为它们不再冲突,但在某些情况下,它们可能共享cookie,因此假设两个独立集并不完全安全

希望能有帮助

更新

_setDomainName用于分析,以确定它将在何处为Google analytics保存cookies。因此,它必须与当前域匹配。如果您在domainX.com中,并尝试将域设置为domainY.com,则无法存储这些cookie。在这种情况下,事情可能会停止工作,或者GA可能会忽略您的设置并使用默认设置

如果您有不同的域,您需要将cookies从一个域传递到另一个域,以便让GA了解这是同一次访问。Google Analytics提供了一些帮助来解决这个问题,并且在开发者文档中有很好的文档记录


非常感谢您的回复。我正试图更好地理解setDomainName的用途。_setDomainName是否必须始终与站点的当前基本域匹配?或者我可以把我想要的东西放进去吗?如果我使用相同的跟踪代码跟踪多个不同的域,那么它们是否都必须将正确的基本域设置为_setDomainName,或者我是否可以将它们都设置为companyname.com?