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

建站经验
图文解读Facebook 从设计原则到架构体系
个人站长建站优化之友情链接必“嫖”宝典
关于重复页面再多也不会被搜索引擎K的问题
会员才是行业网站发展的王道
学习制作网站需要了解的知识
分析通用提示来提升用户体验
教您怎样选择好的虚拟空间
小建议:让您的网站在谷歌浏览器里更出色
图解A记录MX记录CNAME记录url转发NS记录
UPA2008讲稿:互联网产品的交互设计方法
适合于任何人的行业网站创业
开源节流 五个技巧帮你节约你的虚拟主机
快播QVOD服务器软件1.3 版本操作手册
网站用户体验漫谈:关于上传的那点破事儿
提升网站用户转化率:停止路过
固若金汤 构建一个强壮网站内部结构设计
个人下载类网站使用的下载服务器组装
网站地图对网站到底有什么好 SEO四好处
网络创业 我们要用生意人的头脑来做网站
架设一个BLOG需要整合多少东西 12个步骤

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


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

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