繁体   English   中英

Google标记管理器-是否可以通过GTM标记插入dataLayer?

[英]Google tag manager - is it possible to push into dataLayer via GTM tag?

在过去的几天里,我一直在迷惑标签管理和“反汇编” GTM代码的基础知识,试图弄清这东西是如何工作的。 我无法弄清一件事:

场景1。

  • 我将dataLayer硬编码到页面html中
  • 我将JS代码附加到希望“标记”的页面元素上,并将其事件推送到DL中(pdf下载,onClick = ....)
  • 在GTM界面中,我创建了一个标签来处理此onClick事件并检索推送到DL中的值

它是这样的:

  • 单击pdf下载后,对象被推入DL
  • 标签触发并检索事件值
  • 将其发送到GA服务器->在此处全部清除

场景2。

  • 我不会在页面上创建dataLayer; GTM代码段在将页面加载到浏览器后创建一个
  • 这里缺少链接:由于我没有在页面中编码DL,所以我可能也没有将.push()方法附加到适当的DOM元素上

题:

是否可以通过GTM接口完成此操作? 如果是,这意味着在页面加载到浏览器后,我可以以某种方式“注入”额外的JS代码到我的页面代码中吗?

干杯!

编辑(经过更多的教育):

似乎可以做很多事情。 GTM检查页面上是否有数据层,如果找不到,则为您创建一个数据层。 然后,Uou设置宏以将对象推送到此DL(事件)中,最后,您可以让标签从DL检索信息并将其发送到Google Analytics(分析)。 我对吗?

您可以通过创建一个声明数组的专用标签来创建自己的“ DataLayer”, 但是此个人DataLayer不能在触发器中使用。

为了解决这个问题,您可以在测试中使用另一个标签(如果数组包含X,然后是函数...),但是我看不出它比场景1更好。如果这样做,请确保使用标签优先级,这样首先触发第一个标签。

您可以使用内置的Universal Analytics Event标签来跟踪.pdf下载,而无需进行dataLayer硬编码。

如果要在页面加载后触发代码,则可以在触发触发器中使用“等于gtm.load的事件”条件。 例如,您可以使用它来触发带有任何类型的Javascript代码的客户HTML标签。

暂无
暂无

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

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