规则

注意

Adobe Experience Platform Launch已在Adobe Experience Platform中重新命名为一套数据收集技术。 因此,在产品文档中推出了一些术语更改。 有关术语更改的统一参考,请参阅以下文档

Adobe Experience Platform中的标记遵循基于规则的系统。 他们查找用户交互和关联的数据。 如果满足您的规则中所列的标准,则规则会触发您已识别的扩展、脚本或客户端代码。

构建规则可将数据与营销和广告技术的功能整合到一起,从而将不同的产品统一到单个解决方案中。

规则结构

事件 (If):​事件是您希望规则查找的内容。这可通过选择事件、任何适用条件和任何例外进行定义。

操作 (Then):​在规则事件发生并满足所有条件后进行触发。标记规则可以触发所需数量的离散操作,您可以控制这些操作的执行顺序。 例如,只需一个对应某电子商务“感谢”页面的规则,便可通过单个规则触发您的分析工具和第三方标记。无需为每个扩展或标记创建单独的规则。

您可以添加更多事件类型。多个事件使用 OR 进行连接,因此,如果满足其中的任何事件,则将评估规则的条件。

重要

所做的更改在发布之后才会生效。

事件和条件 (if)

包含任何条件的事件属于规则的 If 部分。

如果发生指定的事件,则会评估条件,然后在需要时执行指定的操作。

  • 事件:指定触发规则所必须发生的一个或多个事件。多个事件使用 OR 进行连接。任何指定的事件都将触发规则。

  • 条件:通过配置要使事件触发规则而必须为true的任何条件来缩小事件范围。例外被定义为 NOT 条件。多个条件使用 AND 进行连接。

可用的事件取决于已安装的扩展。有关核心扩展中的事件的信息,请参阅核心扩展事件类型

操作 (then)

操作属于规则的 Then 部分。它们定义您希望规则运行时发生的情况。触发事件时,如果条件评估为 true 且例外评估为 false,则会执行操作。您可以根据需要拖放操作以对其进行排序。

创建规则

通过指定满足条件时执行的操作来创建规则。

  1. 打开Rules选项卡,然后选择​Create New Rule

  2. 命名规则。

  3. 选择事件​添加​图标。

  4. 选择您的扩展以及该扩展可用的事件类型之一,然后配置该事件的设置。

    可用事件类型取决于您选择的扩展。事件设置将因事件类型而异。某些事件不需要配置任何设置。

    重要

    在客户端规则中,数据元素使用 % 对其名称的开头和结尾进行标记。例如:%viewportHeight%。在事件转发规则中,数据元素的标记为:数据元素名称的开头为{{,结尾为}}。 例如:{{viewportHeight}}

    要引用来自 Edge Network 的数据,数据元素路径必须为 arc.event._<element>_

    其中,arc 表示 Adobe 响应上下文。

    例如:arc.event.xdm.web.webPageDetails.URL

    重要

    如果指定的路径不正确,将无法收集数据。

  5. 设置Order参数,然后选择​Keep Changes

    所有规则组件的默认顺序为 50。如果您希望某个规则先运行,则可为其指定一个小于 50 的数字。

    • 执行顺序就是数字的顺序。1 在 3 之前运行。3 在 10 之前运行。10 在 100 之前运行,依此类推。

    • 具有相同顺序的规则不会按特定顺序运行。

    • 规则会按顺序触发,但不一定会以同一顺序完成。如果规则 A 和规则 B 共享一个事件,并且您为它们分配了顺序,以便规则 A 先运行,在这种情况下,如果规则 A 异步执行某些操作,则无法保证规则 A 会在规则 B 开始之前完成运行。

      如果您希望某个规则后运行,则可为其指定一个大于 50 的数字。有关排序的更多信息,请参阅规则排序

  6. 选择条件​添加​图标,然后选择逻辑类型、扩展、条件类型并配置条件的设置。 接下来,选择​Keep Changes

    可用条件类型取决于您选择的扩展。条件设置将因条件类型而异。

    逻辑类型:

    • 常规逻辑类型允许在满足条件时执行操作
    • 例外逻辑类型阻止在满足条件时执行操作

    (高级)Timeout:在资产上启用规则组件排序后,此选项将可用。此属性定义允许条件运行的最长时间。如果达到超时,则该条件将失败,并将从处理队列中删除此规则的其余条件和操作。默认值为 2000 毫秒。

    您可以根据需要添加任意数量的条件。同一规则内的多个条件使用 AND 进行连接。

  7. 选择操作​添加​图标,选择您的扩展以及该扩展可用的操作类型之一,配置操作的设置,然后选择​保留更改

    可用操作类型取决于您选择的扩展。操作设置将因操作类型而异。

    (高级)Wait to run next action:在资产上启用规则组件排序后,此选项将可用。选中此选项后,标记将在完成此操作之前调用下一个操作。 如果不选中此选项,将立即开始执行下一个操作。默认值为​Checked

    (高级)Timeout:在资产上启用规则组件排序后,此选项将可用。此属性定义允许操作完成的最长时间。如果达到超时,则该操作将失败,并将从处理队列中删除此规则的所有后续操作。默认值为 2000 毫秒。

  8. 查看您的规则,然后选择​保存规则

    稍后,当您发布时,您会将此规则添加到库中并对其进行部署。

创建或编辑规则时,您可以将其保存并生成到活动库中。这会立即将更改保存到库并执行生成操作。随即会显示生成操作的状态。

规则排序

规则排序允许您控制共享某一事件的多个规则的执行顺序。

让规则按特定顺序触发通常很重要。示例:(1) 您有多个根据条件设置 Analytics 变量的规则,您需要确保包含 Send Beacon 的规则最后运行。(2) 您有两个规则,其中一个触发 Target,另一个触发 Analytics,您希望 Target 规则先运行。

最终,将由您所使用的事件类型的扩展开发人员负责按顺序执行操作。Adobe扩展开发人员确保其扩展按预期工作。 对于第三方扩展,Adobe会为扩展开发人员提供正确实施此功能的指导,至于具体如何实施,取决于他们自己。

Adobe强烈建议您使用1到100之间的正数来对规则排序(默认值为50)。 越简单越好。请记住,您必须维持您的顺序。但是,Adobe意识到可能会存在一些感觉受限的极端情况,因此允许使用其他数字。 标记支持+2,147,483,648到 — 2,147,483,648之间的数字。 您还可以使用十几位小数,但如果您遇到需要这样做的情况,您应该重新考虑已做出的某些决定以便实现当前的目标。

重要

在规则的“操作”部分,将按顺序执行服务器端规则。创建规则时应确保顺序正确。

方案

  • 五个规则共享一个事件。所有规则都具有默认优先级。我希望其中一个规则最后运行。我只需编辑一个规则组件,为其指定一个大于 50 的数字(例如 60)即可。
  • 五个规则共享一个事件。所有规则都具有默认优先级。我希望其中一个规则最先运行。我只需编辑一个规则组件,为其指定一个小于 50 的数字(例如 40)即可。

客户端规则处理

规则的加载顺序取决于以下两点:规则操作是使用 JavaScript、HTML 还是其他客户端代码配置;规则是使用 page bottom 事件、page top 事件还是其他类型的事件。

无论为规则配置哪种事件,您都可以在自定义脚本中使用 document.write

您可以对不同的自定义代码类型进行排序。例如,您现在可以先执行 JavaScript 自定义代码操作,接着执行 HTML 自定义代码操作,最后再执行 JavaScript 自定义代码操作。标记可确保按顺序执行它们。

规则捆绑

规则事件和条件始终绑定到主标记库中。 操作可以绑定到主库中,也可在以后根据需要以子资源的形式进行加载。是否捆绑操作取决于规则的事件类型。

包含“Core - Library Loaded”或“Core - Page Top”事件的规则

由于几乎总是需要执行这些事件(除非条件评估为 false),因此,为了提高效率,这些事件将捆绑到主库(即,您的嵌入代码所引用的文件)中。

  • Javascript: JavaScript将嵌入到主标记库中。自定义脚本将封装在脚本标记中,并使用 document.write 写入文档。如果规则具有多个自定义脚本,则系统会按顺序写入它们。

    注意

    标记使用ES5 JavaScript。 事件转发使用ES6。

  • HTML: HTML将嵌入到主标记库中。使用 document.write 将 HTML 写入文档。如果规则具有多个自定义脚本,则系统会按顺序写入它们。

包含任何其他事件的规则

Adobe 无法保证会实际触发任何其他规则,并且会需要其操作代码。因此,以上未列出的所有事件类型的操作将不会打包到主库中,而是作为子资源进行存储,并由主库根据需要进行引用。

  • JavaScript: JavaScript 将作为常规文本从服务器加载,封装在脚本标记中,并使用 Postscribe 添加到文档中。如果规则具有多个 JavaScript 自定义脚本,则它们将同时从服务器加载,但会以规则中配置的顺序执行。
  • HTML: HTML 将从服务器加载,并使用 Postscribe 添加到文档中。如果规则具有多个自定义 HTML 脚本,则它们将同时从服务器加载,但会以规则中配置的顺序执行。

规则组件排序

标记运行时环境的行为取决于​按顺序​运行规则组件是否针对您的资产启用或关闭。

已启用

如果已启用,则在运行时触发事件时,规则的条件和操作将根据您定义的顺序添加到处理队列,并按 FIFO 的原则一次处理一个。标记会等待组件完成,然后再转到下一个组件。

如果条件的评估结果为 false 或达到其定义的超时,将从队列中删除该规则的后续条件和操作。

如果操作失败或达到其定义的超时,将从队列中删除该规则的后续操作。

注意

启用此设置后,即使同步加载标记库,也将异步执行所有条件和操作。

已禁用

如果已禁用,则在运行时触发事件时,将立即评估该规则的条件。将并行评估多个条件。

如果所有条件都返回 true(异常时返回 false),将立即执行该规则的操作。虽然会按顺序调用操作,但标记不会等待一个操作完成后再调用下一个操作。 如果您的操作是同步的,它们仍将按顺序执行。如果一个或多个操作是异步执行的,则一些操作将并行运行。

在此页面上