【问题标题】:Issue Updating Adobe Analytics Variable Via Data Element in Dynamic Tag Manager - DTM通过动态标签管理器中的数据元素更新 Adob​​e Analytics 变量的问题 - DTM
【发布时间】:2015-08-09 09:36:19
【问题描述】:

我将 Adob​​e Analytics 设置为 DTM 中的工具。我有一个引用 JS 对象(digitalData.page.pageInfo.pageID)的“页面名称”数据元素。在工具设置区域全局变量中,我将 prop1 设置为 %Hostname%:%Page Name%。我也有在 Pageviews 和 Content 下,Page Name 设置为 %Hostname%:%Page Name%。问题在于 DTM 在此处设置值,它无权访问 digitalData 对象(我试图在下面解决计时问题)。

我在 DTM 代码运行时遇到了对象不可用的问题,因此我输入了一个页面加载规则来禁止 Analytics 调用

s.abort = true;

然后在第 3 方 JavaScript 区域中,我输入代码以检查要检测的对象,并在控制台输出中获得预期值。

(function() { try { function checkObj(){ if (digitalData === null || digitalData === undefined) { setTimeout(checkObj(), 200); }else{ var pn = _satellite.getVar("Page Name"); console.log("----> object available - Page Name DE holds:" + pn); _satellite.track("Analytics Call"); return; } } checkObj(); } catch(e) {e.message(e);} })();

在直接调用规则“Analytics Call”中,我将 Adob​​e Page Name 和 prop1 再次设置为 %Hostname%:%Page Name% 但页面名称仍为空白(仅主机名输出带有冒号)分析呼叫出去了?

在测试中,我注意到在分析工具设置中的“浏览量和内容”部分,如果我从“页面名称”设置文本框中删除值,那么当分析调用结束时,pageName 不会输出任何内容?

所以我的问题是,当分析调用结束时,如何让 Page Name 和 prop1 变量更新为 digitalData 对象的新值?

【问题讨论】:

    标签: javascript adobe adobe-analytics


    【解决方案1】:

    因为这似乎是您的 DL 对象可用和页面加载规则执行之间的竞争条件,所以我会执行以下操作:

    • 为此用例创建“全局页面加载规则”,而不是使用工具中的 AA 全局配置部分。
    • 在全局页面加载规则集 s.abort = true 的 AA 自定义代码部分中。这将允许您等待所有其他对象加载。
    • 加载所有对象时调用直接调用规则
    • 在 DC 规则中检查您的 DL 对象 (pageName) 并设置 AA 变量。

    DC 规则中的示例代码

       if(Data_Layer_Obj)
       s.pageName = datalayer.pageName
    }
    

    由于页面加载规则和数据层对象之间的时间问题,在此处等待数据元素可能是一个挑战。

    希望这会有所帮助。

    【讨论】:

    • 嗨,马克,感谢您的回复。那么您是说删除 Adob​​e Analytics 作为工具并通过页面加载规则手动加载它?
    • 没有。保持 AA 工具不变,并在页面加载规则中无条件执行您的代码。这将在所有页面上触发它。然后,您可以在 AA 自定义代码(在规则内)中设置 s.abort = true,然后调用您的 DC 规则。
    • 嗨,马克,这正是我正在做的。好消息是我刚刚获得了我正在采购的 JS 对象,向上移动了页面(就加载顺序而言),这解决了我的问题。让我感到震惊的是,如果我更新源“页面名称”数据元素正在采购并调用 _satellite.getVar(“页面名称”).. 那么下次分析调用页面名称数据元素时( %Page Name%) s.pageName 将被更新,但情况似乎并非如此?
    • 因为这是一个棘手的情况,我会直接在 DC 规则中分配/设置您的 AA 变量。这样,您始终知道数据存在并且可以忘记任何顺序页面加载依赖项。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    • 2015-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多