现在的位置: 首页 > 综合 > 正文

magento — 1.4版本使用google analytic 流量分析代码的bug

2013年02月04日 ⁄ 综合 ⁄ 共 1338字 ⁄ 字号 评论关闭

在magento 后台设置好google分析账户后,发现打开网站有一条js脚本的错误:

 

_gaq is not defined.

 

很奇怪这是全新安装的的版本,而且是最新版。难道是BUG。上网搜索一下,找到了解决办法:

 

http://www.magentocommerce.com/bug-tracking/issue/?issue=8492

 

 

app/design/frontend/base/default/layout/googleanalytics.xml

 

建议在自己的magento模板目录中创建此件。

 

<!-- Mage_GoogleAnalytics -->

<reference name="after_body_start">
<block type="googleanalytics/ga" name="google_analytics" as="google_analytics" />
</reference>

 

 

修改成

 

<!-- Mage_GoogleAnalytics -->
<reference name="before_body_end"> <<<<<<<<<<<<<<<<<<<<<<
<block type="googleanalytics/ga" name="google_analytics" as="google_analytics" />
</reference>

 

 

编辑app/code/core/Mage/GoogleAnalytics/Block/Ga.php

 

没办法,如果你有时间,你可以重载,以保持比较好的兼容性:

 

$this->addText('
<!-- BEGIN GOOGLE ANALYTICS CODE 1-->
<script type="text/javascript">
//<![CDATA[
var _gaq = _gaq || [];                                                                    <<<<<
_gaq.push(["_setAccount", "' . $this->getAccount() . '"]);              <<<<<
_gaq.push(["_trackPageview", "'.$this->getPageName().'"]);        <<<<<

(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/';
(document.getElementsByTagName(/'head/')[0] || document.getElementsByTagName(/'body/')[0]).appendChild(ga);
})();

//]]>
</script>
<!-- END GOOGLE ANALYTICS CODE -->

 

【上篇】
【下篇】

抱歉!评论已关闭.