gpt4 book ai didi

javascript - 多个跟踪器和电子商务集成失败 - Google Analytics

转载 作者:行者123 更新时间:2023-11-29 17:10:09 26 4
gpt4 key购买 nike

我们正在尝试跨 3 个不同的 GA 属性(跟踪 ID)跟踪页面浏览量和电子商务交易。在完全按照定义遵循集成和开发人员指南并使用正确的 namespace 跟踪器之后,我们得到了不一致的数据。有些交易会被跟踪,有些则不会。似乎在方法论中存在某种冲突,但在尝试各种迭代之后,我们还没有找到解决方案。

代码如下:

(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');

ga('create','UA-XXXX-1','auto',{'name': 'location1'});
ga('location1.send','pageview',{'dimension1': 'location-1-name'});
ga('location1.require','ecommerce','ecommerce.js');

ga('create','UA-XXXX-2','auto',{'name': 'location2'});
ga('location2.send','pageview',{'dimension1': 'location-2-name'});
ga('location2.require','ecommerce','ecommerce.js');

ga('create', 'UA-XXXX-3','auto',{'name': 'location3'});
ga('location3.send','pageview');
ga('location3.require','ecommerce','ecommerce.js');

var transaction = {
'id': '1234',
'affiliation': 'store',
'revenue': '10.50',
'shipping': '5.00',
'tax': '0.00'
};

ga('location1.ecommerce:addTransaction', transaction);

ga('location1.ecommerce:addItem', {
'id': '<?php echo $order->order_no; ?>',
'name': '<?php echo $item->name; ?>',
'sku': '<?php echo $item->item_no; ?>',
'category': '<?php echo $item->item_type; ?>',
'price': '<?php echo number_format($item->item_sale_price,2); ?>',
'quantity': '<?php echo $item->qty; ?>'
});
<?php } ?>

ga('location2.ecommerce:addTransaction', transaction);

<?php foreach ($items as &$item) { ?>
ga('location2.ecommerce:addItem', {
'id': '<?php echo $order->order_no; ?>',
'name': '<?php echo $item->name; ?>',
'sku': '<?php echo $item->item_no; ?>',
'category': '<?php echo $item->item_type; ?>',
'price': '<?php echo number_format($item->item_sale_price,2); ?>',
'quantity': '<?php echo $item->qty; ?>'
});
<?php } ?>

ga('location3.ecommerce:addTransaction', transaction);

<?php foreach ($items as &$item) { ?>
ga('location3.ecommerce:addItem', {
'id': '<?php echo $order->order_no; ?>',
'name': '<?php echo $item->name; ?>',
'sku': '<?php echo $item->item_no; ?>',
'category': '<?php echo $item->item_type; ?>',
'price': '<?php echo number_format($item->item_sale_price,2); ?>',
'quantity': '<?php echo $item->qty; ?>'
});
<?php } ?>

ga('location1.ecommerce:send');
ga('location2.ecommerce:send');
ga('location3.ecommerce:send');

最佳答案

我想我会继续回答这个问题,因为我们确实确定了为什么我们的交易没有被跟踪。

javascript block 内的狡猾的撇号。

在某些交易中,传递到 addItem 对象的项目名称在文本字符串中有一个单引号,因此整个脚本都是错误的。所以最后,当有疑问时,将 addslashes() 添加到任何可能有撇号的字符串。看起来很明显但很容易忘记。

还遇到了一个 Chrome 插件(Google Analytics Debugger),它可以帮助您准确查看传递给 GA 的内容。在管理像这样复杂的多跟踪器设置时非常有用。

https://chrome.google.com/webstore/detail/google-analytics-debugger/jnkmfdileelhofjcijamephohjechhna?hl=en

希望这能帮助其他人不要犯同样的错误。

关于javascript - 多个跟踪器和电子商务集成失败 - Google Analytics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22117910/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com