Google Analytics 异步代码详解
Google Analytics 的异步代码发布很久了,大家都听说过。可是真正用的人,或者花点时间了解的人不多。的确当标准的代码已经能够满足监测需求,而且已经部署到位了,再换成异步纯粹是折腾和浪费精力。
当什么情况下,你必须开始了解异步代码,甚至是使用它呢?
1、Google Analytics 代码放在底部。
用 HTTPWatch 测试你的网站,如果页面的 Google Analytics GIF 请求很晚(个人觉得30秒就很晚了)。这种情况,说明你的网页的 Google Analytics 的监测部署其实已经不太理想。
或者你页面的 JS 写了很多,难免有错误的 JS,影响了 Google Analytics 代码的执行。
2、Google Analytics 代码放在顶部。
按 Google Analytics 的官方建议,所有的电子商务网站的监测,Google Analytics 的代码应放在 <head></head> 之间。处理监测请求一定程度会导致影响了网页的加载速度。
如果是以上两种情况,使用异步代码就能够得到有效的改进。
第一步:准备代码并部署。<script type= "text/javascript" > var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXX-X']); _gaq.push(['_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>
自行替换 UA-XXXXX-X 为你的帐户 ID。并复制粘贴到 <head></head> 之间。
第二步:检查是否数据接收正常,以及效果。用 HTTPWatch 检查一下即可。你会发现,传统的监测代码,ga.js 与 GIF 请求非常的相近(文章上方的截图为例)。而异步代码的特点是:ga.js 的请求与 GIF 的请求不在一起了。
第三步:高阶的说明与应用:
Google Analytics 有两个通用对象,分别是 _gat 与 _gaq 。 _gaq 就是主要服务于新的异步代码的。举例详说:
var pageTracker = _gat . _getTracker ( 'UA-XXXXX-X' ); pageTracker . _trackPageview () ;
在 _gat 对象下,有一个 _getTracker 的方法,创建一个基于 UA-ID 的新对象:pageTracker。然后通过调用 pageTracker 下的大量方法,如 _trackPageview()、_trackEvent() 等等,实现网页的监测。
var _gaq = _gaq || []; _gaq . push ([ '_setAccount' , 'UA-XXXXX-X' ]); _gaq . push ([ ' _trackPageview ' ]);
异步则不尽相同。在 _gaq 对象下,只有一个 push 的方法,通过这个 push 的方法,将所有的监测请求当成数组传送,实现网页的监测。例如,上方通过 push 方法,实现了 trackPageview。
我尽可能通俗地解释了,如果你理解了我这么不专业的解释之后,我们开始实例应用:
_gaq . push ( [ '_setAccount' , 'UA-XXXXX-X' ], [ '_setDomainName' , 'example.com' ], [ '_setCustomVar' , 1 , 'Section' , 'Life & Style' , 3 ], [ '_trackPageview' ] );
第一个例子是实现了两个自定义监测,分别是自定义cookie的域名,自定义了一个变量。
var _gaq = _gaq || []; _gaq . push ([ '_setAccount' , 'UA-65432-1' ]); _gaq . push ([ '_trackPageview' ]); _gaq . push ([ 't2._setAccount' , 'UA-65432-2' ]); _gaq . push ([ 't2._trackPageview' ]);
第二个例子是实现了两个 UA-ID 的监测。注意到第二个,使用了 t2点 开头。t2 是任意命名的,你可以命名为 a1点,也可以命名为 b点。第一个为什么没有点呢?可以这样理解,第一个为“空点”。
最后总结:我个人建议,只要你的网站加载 Google Analytics GIF 请求时间小于30秒,就不需要使用异步代码,否则最好使用异步代码。所有的学习资料链接如下:
异步代码的基本说明: http://code.google.com/intl/zh-CN/apis/analytics/docs/tracking/asyncTracking.html 异步代码的函数说明: http://code.google.com/intl/zh-CN/apis/analytics/docs/gaJS/gaJSApi_gaq.html#_gaq.push最最后,给大家一个预告,一个Google Analytics的新功能即将与大家网页:
Google Analytics Tag Validatoin,帮助你检查代码是否添加完整正确。
http://www.google.com/support/analytics/bin/answer.py?hl=en&answer=179348
上周接触了几个电子商务网站,都是由ecshop程序开发出来的,也存在一些比较基础的SEO问题,其实ECSHOP程序对搜索引擎还是很友好的,由于一些开发者对seo方面的知识还不是很了解,并没有用好ECSHOP内部的一些优化设置,我把我自己的一点小心得写给大家,希望能够有所帮助。
1. 在“商店设置”中设置好你的商店标题,商店描述,商店关键字,其中商店标题不要超过100个字节,商店描述不要超过400个字节,商店关键字不要超过160个字节,请尽量重要的关键字描述在商店标题中,并用逗号,竖线或者用下线符分开,这样有利于搜索引擎的收录及获得较好的排名。
2. 添加产品时请尽量重要的关键字都写在产品的名称中,因为ECSHOP会将产品名称作为网页的标题。请不要因为偷懒而忽略了“其它信息”中的“商品关键词”“商品简单描述”,他们分别是Keywords,Description,这对搜索引擎 优化 非常重要。
3.后台管理中的“系统设置”中有一个站点地图,请你在每次更新你的产品后点击确定,以便制作最新的站点地图(SITEMAP),并向GOOGLE,YAHOO重新提交你的SITEMAP,一般一个小时内GOOGLE会重新获取你网站的最新内容。
插播一条消息:百度现在也出了“站长平台”,可以提交网站地图,有利于站长快速提交百度没有收录或更新有问题的页面,参考:http://sitemap.baidu.com/
4. 请用ECSHOP提供的URL重写功能,将你的网站进行静态 优化 ,这非常重要,具体方法:后台管理中心–>系统设置->商店设置 里的 基本设置 这个栏目里有个“URL重写”的开关。但是这个功能大家要小心,看你的服务器是否支持,有些虚拟主机是不支持rewrite组件的,如果你贸然启用了ecshop的url重写功能,想实现伪静态,将会带来问题。
问题1. 如果你只是在后台设置了启用url重写,内页的地址变成html链接,不可访问。
问题2.如果你修改了网站跟目录下的文件htaccess.txt,改名为.htaccess之后,在FTP中变成不可见,并且会引发服务器出错, 整个网站不能访问。
此时你没有办法修复这个错误,只能求助空间提供商,让他帮你删除.htaccess文件。当然,不用担心,删除后网站就会恢复正常。
网站内部暂时就这么多,以后还会有更深一步的探讨,毕竟我们应该先了解程序内部有利于SEO部分的设置,人家已经做好了这一点,我们没理由不去利用。
http://www.tenlywu.com/?p=335
http://www.netconcepts.cn/blog/e-commerce-minisite-optimization-method
http://v2000.info/2011/06/google-analytics%E4%BB%A3%E7%A0%81%E9%83%A8%E7%BD%B2-%E7%94%B5%E5%AD%90%E5%95%86%E5%8A%A1%E7%BD%91%E7%AB%99/
作者: Leo_wl
出处: http://www.cnblogs.com/Leo_wl/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
版权信息查看更多关于Google Analytics 异步代码详解的详细内容...