日期:2014-05-17  浏览次数:20792 次

第四章:监测访客点击、外链、非HTML文件
监测访客动作或点击其实很简单,只需要加上一段_trackPageview()功能的HTMLTag。

例如监测访客点击某张图片,我们可以给该元素的onclick时间中加入_trackPageview():<img src="/image.jpg" onclick="_gaq.push(['_trackPageview', '/image.jpg']);" />

一旦有访客点击了这幅图片,就会产生一个/image.jpg的PV。

此法也适用于监测非html类的文件:

<a href="/schedule.pdf" onclick="_gaq.push(['_trackPageview',
    '/vpv/downloads/pdf/schedule.pdf']);" />PDF</a>


对非HTML文件设置虚拟PV时,最好试着对其命名,这样会在报告界面中更容易解读。

举个例子,你可能想要用_trackPageview()建立一个虚拟目录结构,在上文距离的代码中,我对传给_trackPageview()的值中添加了/vpv/downloads/pdf/(VP代表Virtual pageview(虚拟页面PV)),在报告中就非常容易识别它们了。

外链也可以用同样的方法来监测:


<a href="http://www.cutroni.com" onclick="_gaq.push(['_trackPageview',
    '/vpv/outbound/'+this.href]);" />www.cutroni.com</a>
在报告中,外链会显示为/vpv/outbound/http://www.cutroni.com,在这里,也是使用了合乎逻辑的命名法则。你还可以通过把所有这些外链归纳到/vpv/outbound/的目录下,会非常便于在热门内容报告或内容细分报告中过滤数据。



但是这些在外链上生成的点击并非“真正”的PV,如果你需要非常精准地记录自己网站上产生的PV数,你需要确保这些外链点击被滤出去,只要在排除过滤器中结合请求URI和与外链设置结构相匹配的过滤模式就可以搞定。

除了虚拟PV,我们还可以用事件监测来监测点击。详参第九章,事件追踪。

不过监测外链和非HTML文件还有一种更简单的方法。你可以创建一个DOM脚本,在访客产生点击时自动对这些链接应用_trackPageview() 。

不过DOM脚本会受到浏览器兼容性的局限,如果浏览器无法支持,脚本也无法执行。而且事实上此种悲剧比你想象得更容易发生。而且问题不止于此,DOM脚本也无法支持新的异步追踪代码。

2007年10月,Google宣称GA将提供自动监控文件下载和外链的功能,但是现在三年都快过去了,这些功能还未发布。Google说马上驾到,可咱完全没看到踪影。

如果你需要监控下载或外链,坐等Google发布功能时不太靠谱了。

另外我推荐把延时功能也加上,尤其是对于追踪外链或者文件下载。在某些情况下,浏览器会将访客请求下载的文件或网址在GA传送虚拟PV或事件前进行重定向转跳,加上一个短小的延时器,就加大了GA记录数据的可能性。

延时功能也就是意味着你要拦截下来访客的点击,接着产生PV,然后再让浏览器执行刚才访客的动作。

你可以这样修改你的外链:


<a onclick='trackClick(this);return false;' href="http://www.redsox.com/" >
Red Sox
</a>


然后再给所有需要追踪外链的页面在Head标签中加上下述JS:


<script type="text/javascript">
function trackClick(this) {
  _gaq.push(['_trackPageview', '/vpv/outbound/'+this.href]]);
  setTimeout('document.location = "' + this.href + '"', 100);
}
</script>
传智播客收集整理,关注java培训,提供java入门教程、java程序设计教程、java视频教程下载。
传智播客php视频大全