刚刚开始将Salesforce社区与Universal Google Analytics(两者均是入门者)进行集成。
在代码中添加GA集成代码。
下载了适用于Chrome的GA调试器。
浏览器:Chrome。
这是标记中的代码:
<script>
(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','https://www.google-
analytics.com/analytics_debug.js','ga');
window.ga_debug = {trace: true};
ga('create', 'UA-xxxxxxxxx-x', 'auto');
ga('send', 'pageview');
ga(function(tracker) {
tracker.set('sendHitTask', function(model) {
var hitPayload = model.get ( 'hitPayload' );
console.log ( 'models payload: ' + hitPayload );
// need this section to get user id value to send to dimension
//ga('set', 'dimension3', tracker.get('userId'));
});
});
</script>
在代码的稍后部分,我们将调用以跟踪事件。
添加完后
“ ga(function(tracker){”代码段
这些跟踪事件的调用不再起作用(用于工作)。
上面的代码有什么问题?
非常感谢
最佳答案
为跟踪器设置sendHitTask
时,您将覆盖它。也就是说,您要删除将数据发送到Google Analytics(分析)的常规任务,然后将其替换为您自己的任务。因此,执行此操作后,您跟踪的所有匹配都不会发送到GA。
相反,在设置sendHitTask
之前,您需要获取现有的并在新的sendHitTask
函数中首先执行该函数。
从documentation for adding to a task开始,执行以下操作的一些代码。在tracker.set
调用之前,您需要添加:
// Grab a reference to the default sendHitTask function.
var originalSendHitTask = tracker.get('sendHitTask');
然后,在您要分配给
sendHitTask
的函数中,您需要调用该函数:// Send the normal request to Google Analytics
originalSendHitTask(model);