使用 GTM 增强电子商务但不使用页内数据层

Enhanced e-commerce using GTM but no in-page dataLayer

我正在做一个项目,我无法访问页面源代码,也不能要求客户的 IT 团队创建 in-page/onload dataLayer,例如在标签之前有 dataLayer。通过 dataLayer.push 远程实施增强型电子商务跟踪的想法是否可行?边走边建数据层?我对 dataLayer.push 知之甚少(我正在开始阅读)。问题是:

谢谢。

你的主要问题是你需要从某个地方获取数据。通常没有 dataLayer 这意味着 DOM 抓取数据,然后在自定义 javascript 函数中将抓取的数据组装到数据层中。缺点与基于 stle/css 的触发器相同:

  • 实施与页面布局密切相关
  • 数据可能丢失,或需要清理(如果与 html 或不相关的文本混合)
  • 客户 CPU 时间
  • 的成本可能很高
  • 自定义 javascript 引入了新的故障点(即您能否进行足够严格的测试以保证没有副作用)

如果您针对客户的 IT 缺点采取变通办法,请记住您拥有这些缺点 - 如果变通办法失败、产生副作用或需要修改以适应新功能,您将对此负责。确保你对这种风险得到了很好的补偿(根据我现在的经验,我个人根本不会这样做)。

我认为在这里承认数据层只是存储此信息的一种方式很重要,使用它只是因为可以从页面向其推送数据。

如果您无法将代码写入站点本身,请不要将信息推送到数据层。只需在 GTM 的变量中为自己保留这些信息。你会省去很多头疼的事情,也省去了一些计算。

DOM 抓取是一种非常合理的获取信息的方式,但是您会 运行 遇到一些障碍。

  • 您将不得不编写很多 JavaScript 来获取您需要的数据。
  • 有些按钮可能由多个元素组成,您必须用触发器等覆盖这些元素。
  • 对站点的任何更改都可能破坏您的代码。
  • 并非所有内容都可供您使用,尤其是数据验证(在报告交易之前可能不再可能检查购买是否成功)。