对于s.tl 调用,AA 要求将大多数事件和变量“注册”到以下两个变量之一或两者:linkTrackVars 和linkTrackEvents。
如果您在其中一个内置字段中分配值,DTM 会自动执行此操作,但如果您在自定义代码部分中弹出事件和变量,您还需要填充 linkTrackVars 和 linkTrackEvents。
linkTrackVars :必须在此处指定所有道具、eVar 和大多数其他命名变量。 pageName 是一个例外,但包含它并没有什么坏处(AA 自动包含它,以跟踪 s.tl 调用发生在哪个页面上)。你不应该包含对象前缀,例如你应该使用“prop1”而不是“s.prop1”。如果你有多个变量,你应该用逗号分隔,没有空格,即“prop1,eVar1”。如果您有要跟踪的事件,“事件”应该包含在列表中(但不是实际事件,只是变量名称,即“prop1,events”)
linkTrackEvents :除了将您的事件放入s.events 之外,您还必须将它们放入此变量中。 通常你可以欺骗它s.linkTrackEvents=s.events;然后收工。
示例:
s.prop1='foobar';
s.events='event1';
s.linkTrackVars='prop1,events';
s.linkTrackEvents='event1';
更多细节,这里是AA链接跟踪的在线文档:
http://microsite.omniture.com/t2/help/en_US/sc/implement/link_variables.html
注意:
不久前,DTM 与在自定义代码部分中为s.tl 设置变量实际上存在一个错误规则内的调用。基本上,即使您没有在内置字段中弹出任何内容,DTM 也会覆盖 linkTrackVars 和 linkTrackEvents,因此无法覆盖或附加它们。简而言之,不可能在自定义代码部分为s.tl 调用设置变量。 Adobe 已经承认并修复了这个错误。
但是,DTM 仍然存在一个错误,它可以正确设置您在 主工具配置 的自定义代码部分中设置的事件和变量,而不是规则。由于我不清楚的原因,DTM 在触发规则时会创建一个单独的 AA 对象。它抓取您在主工具配置的内置字段中设置的任何变量,但它不考虑您在主配置区域的自定义代码框中设置的任何内容。 Adobe 需要通过引用现有 AA 对象而不是创建对象的新实例来解决此问题。
与此同时,如果这是您的情况,那么唯一的解决方法是禁用 AA 为您的规则,而是在Javascript / 第三方标签中创建一个新脚本 部分的规则。在脚本中,设置您希望跟踪的所有 AA 变量,包括 linkTrackVars 和 linkTrackEvents,然后根据 AA 文档调用 s.t() 或 s.tl()。换句话说,您必须避开 DTM 的内置 AA 东西,只需手动设置和触发 AA。
如果您依赖数据元素在内置字段中弹出变量(例如%foobar%),那么您可以在自定义代码中使用_satellite.getVar('foobar') 来引用数据元素。