繁体   English   中英

ga() function 谷歌分析在谷歌标签管理器中作为标签实现

[英]ga() function Google Analytics implemented as a tag in Google Tag Manager

我需要使用自定义ga('send') function 来发送表单提交时触发的数据,特别是通过 Marketo。

在将 GA 作为脚本标签安装的 web 属性上,这非常有效。 但是,在我需要执行此操作的一个站点上,GA 通过 GTM 作为标签安装。 这显然是一个最佳实践。

基本上代码看起来像这样(对于上下文):

form.onSuccess(function (values, url) {
    console.log('success');
    ...
    ga('send', 'event', {
       eventCategory: 'form',
       eventAction: 'submit',
       eventLabel: 'Form Submit'
     });
     ...
     return false;
 });

我做了一些研究

如何使用 Google 跟踪代码管理器发送 ga(...) 事件?

谷歌分析代码说明

前提是我首先需要定义ga() function - 所以我这样做:

window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
ga('create', "UA-XXXXXXXX", 'auto');
form.onSuccess(function (values, url) {
     console.log('success');
     ...
     ga('send', 'event', {
           eventCategory: 'form',
           eventAction: 'submit',
           eventLabel: 'Form Submit'
     });
     ...
     return false;
 });

我可以看到 `console.log("success") 并且没有抛出任何错误,但我没有看到在 GA 中记录了表单提交事件。

有任何想法吗? 如何使用 GA 的 Google 跟踪代码管理器实现与脚本代码进行自定义事件?

在通过 GTM 标签实现 GA 的市场表单页面上,您应该考虑为此使用自定义数据层事件

不要害怕“自定义”这个词,基本上代替 ga() function,你会这样做:

dataLayer.push({'event': 'event_name'});

所以你的代码变成:

form.onSuccess(function (values, url) {console.log('success');
...dataLayer.push({'event': 'form-submit'});...return false;});

然后在 GTM 中:

  1. 根据您刚刚编码以推送到数据层的自定义事件('form-submit')创建触发器,如下所示: 在此处输入图像描述
  2. 然后创建一个GA标签,设置track type“EVENT”,根据需要填写category、action和label。 然后附加您在步骤 1 中创建的触发器。像这样: 在此处输入图像描述
  3. 预览或提交所有内容以查看它是否正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM