首页 文章

现有的Google Analytics事件和Google跟踪代码管理器

提问于
浏览
24

我已在我的网站上实施了Google Analytics(GA),并通过 ga("send", "event", ...); 函数发送了多个自定义事件,效果很好 .

我正在尝试使用Google跟踪代码管理器(GTM) . 我删除了原始GA代码段,现在我使用GTM在我的网站上注入GA标记,并正确跟踪网页浏览量 . 什么效果不好的是由ga()函数发送的自定义事件 .

我注意到 GA create 有跟踪器名称变量之类的

ga("create", "UA-12345678-1", {name: "gtm0123456789", allowLinker: false});

Google Chrome浏览器的Google Analytics Debugger扩展程序报告 Command ignored. Unknown target: undefined .

我发现发送事件调用应该包含跟踪器名称,所以它应该看起来像 ga("gtm0123456789.send", "event", ...); ,但我不想更改所有现有的 GA send event 调用 .

我通过在GTM设置中将跟踪器名称设置为空字符串来快速修改它( Edit Tag -> More Settings -> Advanced Configuration -> ☑ Tracker Name ,将文本框保留为空白),现在它可以正常工作,但我不认为它是如此出色的解决方案 .

有没有其他选项可以让我现有的 GA send event 调用并通过GTM使用事件跟踪?

4 回答

  • -1

    有一种方法 - 您可以在标签管理器中重命名ga功能(高级配置,全局功能名称),例如到“real_ga” . 然后在您自己的页面中创建一个自定义ga函数,该函数从事件跟踪调用中获取参数并将它们传递给real_ga函数(因此您只需要在一个位置更改跟踪器名称),或者更好地将它们推送到dataLayer (然后您可以在GTM中使用dataLayer值进行事件跟踪) .

    但是你为什么要那样做呢?你实际上没有问题,你对你的解决方法感到很糟糕 . 对此的正确答案是,只要它起作用就不会感觉不好 .

  • 4

    我有类似的配置(Google跟踪代码管理器中的通用分析代码),我想点击按钮触发事件 .

    我使用petriq的注释来解决我的问题,因此想要添加我的注释 .

    普通Universal Analytics事件代码采用以下格式:

    ga("send", "event", ...);
    

    您可以使用跟踪器名称从代码中触发Universal Analytics事件:

    ga("gtmXXXXXXXXXX.send", "event", ...);
    

    但是跟踪器名称在每个gtm加载中都会发生变化,因此我更改了以下代码:

    var trackerName = ga.getAll()[0].get('name');
    ga(trackerName + '.send', 'event', { eventCategory: 'category1', eventAction: 'action1', eventValue: 0 });
    

    希望能帮助到你!

  • 53

    http://www.lunametrics.com/blog/2015/01/21/gtm-existing-tracking/

    在GTM综合浏览量标签中,导航到更多设置>高级配置 . 选中“跟踪器名称”复选框,但将该字段留空 .

  • 2

    最好的方法是使用GTM实现所有跟踪 . 它可以让您更好地控制跟踪代码,并在部署新标签时提供更大的灵活性 .

相关问题