背景当前,数据层中有一个标志,当将其设置为false时,Adobe Analytics代码将不会运行。我们这样做的原因有很多,包括是否在产品或正在捕获的数据中发现任何安全问题。我们将flag设置为false,并且不再从页面中提取Adobe Analytics脚本。理想情况下,我们试图在DTM中模仿此确切功能,而无需批准和发布任何内容。我们只希望能够在数据库中进行设置,并且可以在所有页面上立即使用它们,而不必担心公司的软件提升政策。就是说,我在想,既然数据元素首先加载到页面上,那么我可以从数据层获取值,然后使用if语句和_satellite.getVar()中的s_code来确定被实例化。这是一个惨痛的失败。不仅AppMeasurement不可用,甚至设置_satellite.getVar()都不起作用。虽然我认为只有if(false)会实例化s_code,但显然只有DTM中处于活动状态的工具才意味着可以直接调用AppMeasurement函数。对这个工具更熟悉的人是否有任何想法可以让我们确定AppMeasurement是否基于页面上的某种内容更改(我们使用数据层,但我愿意接受所有建议)而运行。非常感谢您的宝贵时间,麦克风 最佳答案 DTM当前没有任何页面加载规则以不输出任何代码,也没有任何方式有条件地禁止调用。AM本身确实具有一个s.abort变量,您可以将其设置为true,它将禁止下一个s.t或s.tl调用。但是DTM的界面中没有内置var,因此您必须将其放入规则的自定义代码部分。更新:重申一下,s.abort不会完全禁止所有AM呼叫;它抑制下一个呼叫。通话结束后,AM将s.abort重置为false。因此,这对于初始页面加载规则非常有用,但是例如,如果您在页面加载后弹出任何代码(例如退出/下载链接跟踪或您可能拥有的某些其他自定义代码),则不会抑制该行为。即使您未在页面跟踪后进行自定义,也要确保确定的位置是在“工具”配置中,您可以在其中指定下载跟踪和内部/外部链接跟踪(如果启用了AM,则本机会自动弹出该跟踪)(基本上是DTM的界面linkInternalFilters,trackDownloadLinks,trackExternalLinks,linkDownloadFileTypes和trackInlineStats)。要通过这些设置保持启用这些功能,没有简单的方法,因此,我认为最好的方法是禁用它们并使用基于事件的规则进行复制,以便可以将s.abort并入其中。需要考虑的另一个注意事项:s.abort禁止向Adobe发出最终请求,但是几乎执行了导致实际请求的所有操作。要考虑的最值得注意的事情是,如果启用了doPlugins(DTM当前在界面中没有此功能,但是没有什么阻止您启用它并在自定义代码中自行定义),它将被执行。这可能会影响您在那里的任何逻辑,尤其是进行cookie读/写的东西。例如,假设您有一个“订婚游客”度量标准,该度量标准设置为在访问者查看3页后弹出,然后通过使用cookie存储和递增值并读取cookie并在事件到达时弹出事件来实现此目的3,并且这一切都在您的doPlugins函数(或页面加载规则中的其他位置)中,s.abort不会抑制任何这些。关于adobe-analytics - 使用DTM杀死Adobe Analytics的Switch,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25325862/
10-13 03:03