Google Analytics未跟踪Magento 1.7中的转换

Google Analytics未跟踪Magento 1.7中的转换,magento,google-analytics,Magento,Google Analytics,我使用的是Magento内置的Googleanalytics模块,它可以很好地用于页面视图,但不能用于转换。该账户在谷歌上设置良好,但没有在checkout/onepage/success页面中添加addTrans部分 今天早上我做了很多挖掘,发现观察者确实正确地观察了“checkout\u onepage\u controller\u success\u action”,并且确实运行了。它做了以下工作: $block = Mage::app()->getFrontController()

我使用的是Magento内置的Googleanalytics模块,它可以很好地用于页面视图,但不能用于转换。该账户在谷歌上设置良好,但没有在checkout/onepage/success页面中添加addTrans部分

今天早上我做了很多挖掘,发现观察者确实正确地观察了“checkout\u onepage\u controller\u success\u action”,并且确实运行了。它做了以下工作:

$block = Mage::app()->getFrontController()->getAction()->getLayout()->getBlock('google_analytics');
    if ($block) {
        $block->setOrderIds($orderIds);
    }
我做了一些回显,它确实检索了块,并且它还正确地设置了顺序ID。但是,在块本身中,如果我回显$this->getOrderIds();它是空的

我的下一个想法是,也许它可以在页面上使用两个GA块,也许它会将数据传递给第一个块,但会重复第二个块的HTML,但我不知道如何开始检查它!Googleanalytics.xml文件中只有一个块,我不会在其他任何地方使用该块名称

有没有人有过类似的经历?或者你知道我能从这里走到哪里吗

编辑: 如果$this->getOrderIds()返回一个数组,则Ga.php块包含事务代码,但它没有这样做。但是,观察者正在执行$block->setOrderIds($order\uids);它正在通过一个包含订单id的数组。因此观察者正在将id传递给块,而块正在接收它们(设置一个setBlockID方法并回显参数,确实显示了数组),但是当块尝试访问自己的数据时,它突然不在那里($block->getData()返回一个属性数组,但没有order_id属性)

我还认为可能是因为它在设置订单id之前回显了块HTML,所以我添加了一些变量来检查这一点,但事实并非如此——在再次尝试获取订单id之前,它确实设置了订单id,但仍然不起作用


我完全被难住了!我现在唯一的想法是修改Ga.php块以使用Magento的注册表,而不是它自己的_data属性,这真的不是一个好方法

我想我是个彻头彻尾的工具。Magento没有在live站点上跟踪转换,因为我没有将帐户代码放在配置部分,但我在测试站点上有

我以前在模板中放过我自己的分析代码,所以我跟踪了页面浏览量

当我看到没有转换时(尽管将帐户代码放在我的测试站点中),我开始在测试站点上下订单,然后查看订单成功页面的源代码。Firefox将其源代码作为一个新请求加载…这会自动转到空框页面。所以很明显,它没有显示addTrans或任何东西,因为它已经这样做了

firebug的快速检查显示它正常工作


所以最后,经过一天的搜索,我不得不在管理员栏中将“否”改为“是”,并输入帐户代码。很好。

我不知道您是否正在进行目标挖掘或监控单页签出的各个阶段-您读过这个吗?-。我以前使用过这种技术,而且效果很好。两者都没有-我现在只是在监视事务。嗯,试着。除了在调试过程中(后来我删除了调试),我没有修改或添加Magento内核的任何额外功能。我已经编辑了我的文章,其中包含了更多的细节,非常感谢你的坦白:)。至少你在工作日结束前就解决了——没有什么比结束工作更糟糕的了,也没有什么比开始工作时更好的了。我不羞于承认有时我是个扳手!我想如果我还没有整理好的话,我会哭着睡着的。特别是如果我在今天结束的时候发现了我的错误!