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

建站经验
经验探讨 用户体验与搜索引擎优化的结合
让你的网站产生Google Sitelinks的六个要素
凸显使用体验 网站导航最受美国厂商关注
外国人眼中网站设计和网站建设二十个原则
网站更换域名应该注意的八个方面
五年经验告诉你 细节决定网站成败
新网站如何提高流量
稳中求升 购买付费链接应注意的九个问题
经验越多下手越难 你能抛弃你所学习的吗
站长进行设计网站时必须注意二十三个方面
路径突破 谈谈英文站比中文站更能做成功
谈谈网站运营中的关键的一环 团队的管理
最原始的东西最有价值 致天下所有创业者
名博怎样练成 析月光博客成功的六个原因
学生站长持续自己的冬天 仍坚守春天的期待
关于对web的分析 获得可行动的认识和度量
五个月前后五次改动 让我的流量稳在五万
亲手关闭自己论坛 泣血奉献一些心得经验
用户体验指导思想 易用友好 把用户当傻瓜
网站如何将用户体验与搜索引擎优化相结合

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 64 ::
收藏到网摘: 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

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