当前位置: 首页 > 图文教程 > 网站运营 > 建站经验 > Google Analytics进阶运用之跨域跟踪

建站经验
网站为什么会被百度降权 的原因分析
在搜索引擎上做排名的方法
最令人讨厌的 也是最行之有效的广告类型
穷站长 富站长 分析
如何成为一名合格的站长
建站经验 网站打开速度快慢的因素
建站IDC选择经验 认识双线机房
制作网站需要学习的知识
判断某个网站流量简单分析
岳贵 谈谈个人站长如何树立信念
个人站长二步定位好一个网站
博客网站打造高流量的四种方法
建站经验 你的网站该如何应对被采集
充分利用百度知道进行网络推广
你听说过月赚4万美圆的个人博客吗
网站 搜索引擎降权的处理方法
网页设计 可读性的提高方法
目前最流行的10款国外博客程序
充分利用微型博客推广的技巧
建站经验 成功网站应该具备的

建站经验 中的 Google Analytics进阶运用之跨域跟踪


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 117 ::
收藏到网摘: n/a

从今天开始一个介绍Google Analytics进阶运用的系列日志,其实没有多少技术含量,主要内容来自http://code.google.com/apis/analytics/docs/index.html,不过其中部分的用词与说法与官方不太一样。

首先,要清楚以下几点:

1、Google Analytics用document.domain定义一个网站的cookies

2、独立的域名意味着独立的访问者和流量数据,也就是说,在只使用Google Analytics默认代码的情况下,即使是访问不同的二级域名,都会被单独计算

3、独立的域名并不一定是不同的内容

4、子目录使用主域名的cookies

ps:本系列的ID都是google文档中的,想使用的话请更换成自己的

只统计一个子目录

假如我有一个网站www.example.com,还有一个网店www.example.com/myStore/,我只想统计网店的访问数据,需要用到_setCookiePath()方法,统计代码这么写:

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setCookiePath("/myStore/");
pageTracker._trackPageview();

这是因为cookie路径设置为您的子目录,而不是根目录www.example.com

统计同域名下连个子目录

假如我有一个网店,还有一个购物车

www.example-commerce-host.com/myStore/

www.example-commerce-host.com/myCart/

想统计他们的访问数据,需要用的_cookieCopyPath()方法,统计代码这么写:

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setCookiePath("/myStore/");
pageTracker._cookiePathCopy("/myCart/");
pageTracker._trackPageview();

这样就是设置了一个特殊的cookie,由第一个目录提供,也就是myStore目录,这些cookie数据会被复制到myCart目录cookie中

统计A域名及B域名的一个子目录

这是我认为比较有用的应用方式。

假如我有一个网店,使用的是第三方的购物车,这时候需要设定主次,一般自己的是主,第三方的东西是次。统计代码这么写:

主:www.example-petstore.com

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setAllowLinker(true);
pageTracker._setAllowHash(false);

次:www.example-commerce-host.com/petStoreCart

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setDomainName("none");
pageTracker._setAllowLinker(true);
pageTracker._setAllowHash(false);

_setAllowLinker()方法是为了让目标网站读取到post过来的数据和cookie,但是这样还不够,还需要用到_linkByPost()方法,将网店的cookie通过HTTP POST传到购物车,因此,在网店的表单里需要这样修改:

onSubmit="pageTracker._linkByPost('www.example-commerce-host.com/petStoreCart/begin.php');"

当然网店的相关链接也要改为这样的:

<a href="pageTracker._linkByPost('www.example-commerce-host.com/petStoreCart/legalTerms.php');">购物车</a>

还有js形式的写法,用到_link方法

<a href="www.example- commerce-host.com/petStoreCart /legalTerms.php" onclick="pageTracker._link(this.href); return false;"& gt;购物车</a>

统计主域名及其二级域名

类似这样的:

www.example-petstore.com

dogs.example-petstore.com

cats.example-petstore.com

统计代码这么写:

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setDomainName(".example-petstore.com");
pageTracker._trackPageview();

用_setDomainName方法设定主域名

统计多域名及二级域名

这是一种混杂的情况,基本上是前两种情况相加,统计代码要这么写:

主:www.example-petstore.com

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setDomainName(".example-petstore.com");
pageTracker._setAllowLinker(true);
pageTracker._setAllowHash(false);

如果有表单指向了其他域名,需要用_link()方法和_linkByPost()方法将cookie传到其他域名去,用法上面已经写过了。如果表单指向的是二级域名,就不一定要使用_link()方法和_linkByPost()方法了,因为已经设定了主域名。

次:dogs.example-petstore.com

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setDomainName(".example-petstore.com");
pageTracker._setAllowLinker(true);
pageTracker._setAllowHash(false);

同样的,如果有表单指向了其他域名,需要用_link()方法和_linkByPost()方法将cookie传到其他域名去

其他域名:www.my-example-blogsite.com

var pageTracker = _gat._getTracker("UA-12345-1");
pageTracker._setDomainName("none");
pageTracker._setAllowLinker(true);
pageTracker._setAllowHash(false);

统计框架(iFrame)

假如想把框架中的www.my-example-iframecontent.com数据传到父一级www.example-parent.com的窗口中去,需要用到_getLinkerURL()方法,用js读取框架,统计代码要这么写:

var iframe = document.getElementById("myIFrame");
iframe.src = pageTracker._getLinkerUrl(http://www.my-example-iframecontent.com/);

作者:Sluke 邮箱:sluke520#yahoo.com.cn

原文链接:http://www.luweiqing.com/labor/Google-Analytics-Cross-Domain-Tracking.html

如欲转载请保留以上全部信息,谢谢合作。