当我的页面显示时,我将一些数据推送到Google跟踪代码管理器(GTM)dataLayer:
dataLayer.push({
event: "MY_EXPERIMENT",
variant: "A",
result: "FORM_DISPLAYED"
});
提交表单后,我推送一些新数据:
dataLayer.push({
event: "MY_EXPERIMENT",
variant: "A",
result: "FORM_SUBMITTED"
});
我在GTM中创建了dataLayer变量,并在GTM的标签的类别/动作/标签字段中插入了这些变量 . 其中一个变量设置如下:
标记由URL路径触发,在预览模式下,它可以工作 .
但是,当我在Google Analytics的实时信息中心查看事件时,类别/标签/事件列中仅显示“未定义” . 在我看来,变量没有正确设置,但我已经查看了一切,看起来很好 .
我究竟做错了什么?
2 回答
我想通了 . 我没有在GTM的事件代码中的“更多设置 - >电子商务”下选中“使用数据层”复选框 . 很难找到复选框,我没有在任何教程中看到它 . 但这解决了我的问题!
很抱歉没有截图 .
它最有可能发生的是你的标签过早发射 . 您说GA事件标记是基于URL路径触发的 . 这很可能意味着您在GTM中使用
All Pages
触发器,并且可选的过滤器仅在特定页面上触发 . 但是,您最有可能只执行那些dataLayer推送 after GTM容器代码 . 这意味着在标记触发时,那些dataLayer推送了为什么你在变量的值中得到了undefined
.要解决此问题,您应该将GA事件代码的触发器从
All Pages
更改为Custom Event
. 在您的情况下,自定义事件名称将为MY_EXPERIMENT
.