【问题标题】:"Translate" utag.link (tealium tracking function) into _satellite.track (Adobe Launch tracking)将 utag.link(telium 跟踪功能)“翻译”成 _satellite.track(Adobe Launch 跟踪)
【发布时间】:2021-11-25 09:04:21
【问题描述】:

我们正在将 Tealium 网络分析跟踪迁移到 Adob​​e Launch。

部分网站被utag.link方法标记,例如

utag.link({
"item1" : "item1_value",    
"item2" : "item2_value",
"event" : "event_value"})

我们需要将其“翻译”成 Adob​​e Launch 语法,以节省开发人员的时间,例如

_satellite.track("event_value",{item1:"item1_value",item2:"item2_value"})

你会如何处理它?可行吗?

非常感谢 帕维尔

【问题讨论】:

    标签: tealium adobe-launch


    【解决方案1】:

    好的,这比看起来要复杂一些。从技术上讲,这完全回答了您的问题:https://experienceleaguecommunities.adobe.com/t5/adobe-experience-platform-launch/satellite-track-and-passing-related-information/m-p/271467

    但是!这将使跟踪只能由 Launch/DTM 访问。如果其他 TMS 甚至全局 env JS 也需要这些数据,它们最终将依赖 Launch。想象一下,五年后您想像现在使用 Tealium 一样从 Launch 迁移时会发生什么?你将不得不做同样不必要的事情。如果您的 Tealium 实施实施得更仔细,您现在就不需要在此迁移上浪费时间了。

    因此,我建议不要使用 _satellite.track()。我建议详细使用带有有效负载的纯 JS CustomEvents。 Launch 本机具有本机 JS 事件的触发器以及通过 CJS 访问其详细信息的能力:event.details。但即使我需要在 GTM 中使用它,我也可以在 GTM 中部署一个简单的事件监听器,它将所有精彩的 CustomEvents 重新路由到 DL 事件中,并将它们的有效负载放在整洁的 DL vars 中。

    有了这个,当您需要为不同的 TMS 提供跟踪时,无论是迁移还是奇偶校验跟踪到不同的分析系统,您都无需打扰前端开发人员。

    【讨论】:

      【解决方案2】:

      一般来说,同意 BNazaruk 的回答/理念,即让您的实施面向未来的最佳方式是创建一个通用数据层并将其广播到自定义 javascript 事件。几乎所有现代标签管理器都有订阅它们的方法,映射到它们等效的环境变量、事件规则等。

      话虽如此,这里概述了 Adob​​e 当前使用 Adobe Client Data Layer 扩展的 Adob​​e Experience Platform 数据收集(启动)最佳实践。

      安装扩展程序后,您可以更改 utag 呼叫,例如

      utag.link({
          "item1" : "item1_value",    
          "item2" : "item2_value",
          "event" : "event_value"
      })
      

      到这里:

      window.adobeDataLayer = window.adobeDataLayer || [];
      window.adobeDataLayer.push({
          "item1" : "item1_value",    
          "item2" : "item2_value",
          "event" : "event_value"
      });
      

      关于此的几点说明:

      1. adobeDataLayer 是 Launch 扩展将查找的默认数组名称。您可以在扩展程序的配置中将其更改为其他内容(尽管 Adob​​e 不推荐这样做,原因是)。
      2. 您可以保留您用于 Tealium 的当前有效负载结构并使用它,尽管从长远来看,您应该考虑重组您的数据层。在处理 Tealium 的数据层语法/约定与 Launch 时,事情会变得有些复杂。例如,如果您在 event 字符串(Tealium 约定)中有多个逗号分隔的事件,而不是在 Launch 中创建事件规则(期望字符串中有一个事件)。这些东西有一些解决方法(如果需要帮助,请提出单独的问题),但同样,长期的最佳途径是将数据层的结构更改为更标准的结构。

      然后,在 Launch 中,您可以创建数据元素以映射到在 adobeDataLayer.push 调用中传递的给定数据点。

      同时,您可以根据各种条件使用监听推送数据的事件创建规则。常见示例是侦听特定事件,该事件对应于您推送的 event 值。例如:

      然后在规则的条件和操作中,您可以引用您制作的数据元素。例如,如果您想在event 等于“event_value”(上图)时触发规则,并且如果item2 等于“item2_value”,您可以添加这样的条件:

      另一个示例,将 Adob​​e Analytics eVar1 设置为 item2 值的操作:

      【讨论】:

        【解决方案3】:

        我建议从您的平台代码中删除对 TMS 的任何依赖项,并迁移到使用通用数据层。这样,您的开发人员将来在迁移 TMS 时不会遇到任何问题。

        请参阅这篇关于通用数据层而非 TMS 提供者特定的文章:https://dev.to/alcazes/generic-data-layer-1i90

        【讨论】:

          猜你喜欢
          • 2013-01-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-02-28
          • 1970-01-01
          • 2021-01-10
          相关资源
          最近更新 更多