在本课程中,您将实施 Adobe Analytics 扩展,并创建相应规则以将数据发送到 Adobe Analytics。
Adobe Analytics 是一款行业领先的解决方案,可帮助您充分了解客户的行为和需求,并根据客户情报掌控自己的业务发展方向。
Adobe Experience Platform Launch将作为一套数据收集技术集成到Adobe Experience Platform中。 界面中已推出一些术语更改,在使用此内容时,您应该注意这些更改:
在本课程结束后,您将能够:
标记中可以对Analytics实施多项操作。 本课程的内容虽不详尽,但应当仍可以让您充分了解在自己的网站中实施 Analytics 所需的各项主要技术。
您应该已经完成 配置标记 和 添加Identity服务.
此外,您还至少需要一个报表包 ID 和跟踪服务器。如果您没有可在本教程中使用的测试/开发报表包,请创建一个。如果不确定如何执行此操作,请参阅此文档。您可以从当前实施中检索跟踪服务器,或者向 Adobe 顾问或客户关怀代表索取。
Analytics 扩展包含两个主要部分:
添加 Analytics 扩展
转到 Extensions > Catalog
找到 Adobe Analytics 扩展
单击 Install
在 库管理>报表包,输入要用于每个标记环境的报表包id。 如果您的用户有权访问Adobe Analytics,请注意,当您开始在框中键入内容时,您将看到一个预填充的列表,其中包含所有报表包。 (在本教程中,您可以为所有环境使用一个报表包,但在现实工作中,您会希望为不同的环境使用不同的报表包,如下图所示)
我们建议使用 Manage the library for me 选项作为 Library Management 设置,因为这样可以更加轻松地使 AppMeasurement.js
库保持为最新。
在 常规>跟踪服务器,输入跟踪服务器,例如 tmd.sc.omtrdc.net
. 如果您的网站支持 https://
,请输入 SSL 跟踪服务器
在 全局变量部分,在 其他设置,请设置 页面名称 变量 Page Name
数据元素。 单击 图标以打开模式窗口,然后选择页面
Page Name
数据元素
单击 Save to Library
全局变量可以在扩展配置或规则操作中进行设置。请注意,在扩展配置中设置变量时,必须定义数据层 之前 标记嵌入代码。
现在,您将创建一个规则以触发 Analytics 信标,进而发送在扩展配置中设置的 Page Name 变量。
您已在 添加数据元素、规则和库 本教程的课程,该课程将在加载标记库时在每个页面上触发。 您 could 也可以将此规则用于Analytics,但是,此设置要求先定义在Analytics信标中使用的所有数据层属性,然后再定义标记嵌入代码。 为增加数据收集的灵活性,您将新建一个在 DOM 就绪时触发的“所有页面”规则,以触发 Analytics 信标。
发送页面查看信标
转到 规则 ,然后单击 添加规则
将规则命名为 All Pages - DOM Ready
单击 Events > Add 以打开 Event Configuration
屏幕
选择 Event Type > DOM Ready(请注意,该规则的顺序为“50”)
单击 Keep Changes
在 Actions 下,单击 以添加新操作
选择 Extension > Adobe Analytics
选择 Action Type > Send Beacon
将 Tracking 保留设置为 s.t()
。请注意,如果您想要在点击事件规则中发起 s.tl()
调用,则也可以使用 Send Beacon 操作来实现这一点。
单击 Keep Changes 按钮
单击 Save to Library and Build
现在,您已创建用于发送 Analytics 信标的规则,接下来应该能够在 Experience Cloud Debugger 中看到相应请求。
在 Chrome 浏览器中打开 Luma 网站
单击 Debugger 图标 以打开 Adobe Experience Cloud Debugger
确保Debugger将标记属性映射到 您的 开发环境,如 前课
单击以打开 Analytics 选项卡
展开您的报表包名称以显示针对该报表包发出的所有请求
确认使用 Page Name 变量和值触发了相应请求
如果未显示页面名称,请回溯本页面上列出的各个步骤,以确保未遗漏任何内容。
配置 Analytics 扩展后,您便在扩展配置中填充了 pageName
变量。如果在标记嵌入代码加载之前页面上有可用的值,则可以在此处填充其他全局变量,例如eVar和prop。
要更加灵活地设置变量和事件,可以通过在规则中使用 Set Variables
操作来实现。使用规则,您可以在不同的条件下设置不同的 Analytics 变量和事件。例如,之前,您只能在产品详细信息页面上设置 prodView
事件,且只能在订单确认页面上设置 purchase
事件。此部分将向您讲授如何使用规则设置变量。
产品详细信息页面 (PDP) 是零售网站上的重要数据收集点。一般情况下,您会希望 Analytics 记录发生的产品查看事件以及查看的产品。这有助于您了解哪些产品在客户中受欢迎。在媒体网站上,文章或视频页面也可以使用类似于您在此部分所使用的跟踪技术。加载产品详细信息页面时,您可能希望将该值放入“页面类型”eVar
中,并设置一些事件和产品 ID。这使我们能够在分析中了解以下信息:
首先,您需要确定哪些页面属于产品详细信息页面。您可以使用数据元素来执行该操作。
为页面类型创建数据元素
单击 数据元素 在左侧导航中
单击 Add Data Element
将数据元素命名为 Page Type
选择 Data Element Type > JavaScript Variable
使用 digitalData.page.category.type
作为 JavaScript变量名称
检查 清理文本 和 强制小写 选项
单击 Save to Library
接下来,您将使用数据元素收集当前产品详细信息页面中的产品 ID
为产品 ID 创建数据元素
单击 数据元素 在左侧导航中
单击 Add Data Element
将数据元素命名为 Product Id
选择 Data Element Type > JavaScript Variable
使用 digitalData.product.0.productInfo.sku
作为 JavaScript变量名称
检查 清理文本 和 强制小写 选项
单击 Save to Library
如果您已经熟悉 Adobe Analytics 实施,则可能也熟悉产品变量。产品变量具有非常具体的语法,而且其使用方式会因上下文而略有不同。为了帮助在标记中更轻松地填充产品变量,已在标记扩展市场中创建了其他三个扩展! 在此部分中,您将添加一个由 Adobe 咨询团队创建的扩展,以将其用在产品详细信息页面中。
添加 Adobe Analytics Product String
扩展
转到 Extensions > Catalog 页面
找到由 Adobe 咨询服务团队创建的 Adobe Analytics Product String
扩展,然后单击 Install
花些时间阅读相关说明
单击 Save to Library
现在,您将使用新的数据元素和扩展来构建产品详细信息页面规则。对于此功能,您将再创建一个在 DOM 就绪时触发的页面加载规则。但是,您将使用相应条件以便该规则只在产品详细信息页面上触发,并设置顺序以便该规则在用于发送信标的规则“之前”触发。__
构建产品详细信息页面规则
转到 规则 ,然后单击 添加规则
将规则命名为 Product Details - DOM Ready - 40
单击 Events > Add 以打开 Event Configuration
屏幕
选择 Event Type > DOM Ready
将 Order 设置为 40,以便该规则在包含 Analytics > Send Beacon 操作的规则“之前”运行。**
单击 Keep Changes
在 Conditions 下,单击 以打开
Condition Configuration
屏幕
选择 Condition Type > Value Comparison
使用数据元素选取器,在第一个字段中选择 Page Type
从比较运算符下拉列表中选择 Contains
在下一个字段中键入 product-page
(这是从 PDP 上的数据层提取的页面类型值的独特部分)
单击 Keep Changes
在 Actions 下,单击 以添加新操作
选择 Extension > Adobe Analytics Product String
选择 Action Type > Set s.products
在 Analytics E-commerce Event 部分中,选择 prodView
在 Data layer variables for product data 部分中,使用数据元素选取器选择 Product Id
数据元素
单击 Keep Changes
在 Actions 下,单击 以添加新操作
选择 Extension > Adobe Analytics
选择 Action Type > Set Variables
选择 eVar1 > Set as,然后输入 product detail page
设置 event1,并将可选值留空
在 Events 下,单击 Add Another 按钮
设置 prodView 事件,并将可选值留空
单击 Keep Changes
单击 Save to Library and Build
您刚刚创建了一个规则,该规则会在发送信标之前设置变量。现在,您应该能够在 Experience Cloud Debugger 中查看在点击中传出的新数据。
验证产品详细信息页面数据
在 Chrome 浏览器中打开 Luma 网站
导航到任意产品详细信息页面
单击 Debugger 图标 以打开 Adobe Experience Cloud Debugger
单击 Analytics 选项卡
展开您的报表包
请注意当前位于 Debugger 中的产品详细信息变量,即:eVar1
已设置为“product detail page”,Events
变量已设置为“event1”和“prodView”,Products 变量已设置为您正在查看的产品的产品 ID,并且 Page Name 仍由 Analytics 扩展进行设置
页面加载时,通常会触发由 s.t()
函数触发的页面加载信标。这会自动递增在 pageName
变量中列出的页面的 page view
量度。
但是,有时候您不希望递增网站上的页面查看次数,因为正在执行的操作“不足以”计为一次页面查看,或者可能根本不属于页面查看。在这种情况下,将使用 s.tl()
函数,该函数通常称为“跟踪链接”请求。虽然它称为跟踪链接请求,但不需要在单击链接时触发。它可由 any 标记规则生成器中可用的事件,包括您自己的自定义JavaScript。
在本教程中,您将使用最酷的 JavaScript 事件之一(Enters Viewport
事件)来触发 s.tl()
调用。
对于此用例,您希望了解用户是否在Luma主页上向下滚动到足够远的位置,以查看 特色产品 的子目录访问Advertising Cloud帮助。 我们公司内部对于用户是否查看了该部分存在一些分歧,因此您希望使用 Analytics 查明真相。
转到 规则 部分,然后单击 添加规则
将规则命名为 Homepage - Featured Products enters Viewport
单击 Events > Add 以打开 Event Configuration
屏幕
选择 Event Type > Enters Viewport。此时将显示一个字段,您需要在其中输入 CSS 选择器,该选择器将标识页面上应在进入浏览器视区时触发此规则的项目。
返回Luma主页,然后向下滚动到特色产品部分。
右键单击“特色产品”标题与此部分中项目之间的空白处,然后选择 Inspect
中。 这会将您引导至目标位置附近。
在目标位置附近,可能就在选定部分正下方,您需要查找包含 class="we-productgrid aem-GridColumn aem-GridColumn--default--12"
的 div。找到该元素。
右键单击该元素,然后选择 Copy > Copy Selector
返回到标记,然后将此值从剪贴板粘贴到标记为的字段 Elements matching the CSS selector
.
单击 Keep Changes
在 Conditions 下,单击 以添加新条件
选择 Condition Type > Value Comparison
使用数据元素选取器,在第一个字段中选择 Page Name
从比较运算符下拉列表中选择 Equals
在下一个字段中键入 content:luma:us:en
(这是从数据层提取的主页的页面名称 - 我们只希望此规则在主页上运行)
单击 Keep Changes
在 Actions 下,单击 以添加新操作
选择 Extension > Adobe Analytics
选择 Action Type > Set Variables
将 eVar3
设置为 Home Page - Featured Products
将 prop3
设置为 Home Page - Featured Products
将 Events
变量设置为 event3
单击 Keep Changes
在 Actions 下,单击 以添加其他新操作
选择 Extension > Adobe Analytics
选择 Action Type > Send Beacon
选择 s.tl()
跟踪选项
在 Link Name 字段中,输入 Scrolled down to Featured Products
。此值将放入 Analytics 的“自定义链接”报表中。
单击 Keep Changes
单击 Save to Library and Build
现在,您将需要确保在向下滚动到我们网站主页的特色产品部分时,会计入此点击。 第一次加载主页时,不应发起该请求,但在向下滚动直至 New Arrivals 部分可见后,该点击应触发我们的新值。
在 Chrome 浏览器中打开 Luma 网站,并确保您位于主页顶部。
单击 Debugger 图标 以打开 Adobe Experience Cloud Debugger
单击 Analytics 选项卡
展开您的报表包点击
请注意主页的常规页面查看点击中的页面名称等(但 eVar3 或 prop3 中没有任何内容)。
保持Debugger处于打开状态,在您的网站上向下滚动,直至看到特色产品部分
再次查看 Debugger,此时应该出现另一次 Analytics 点击。此点击应具有与您设置的 s.tl() 点击相关联的参数,即:
LinkType = "link_o"
(这表示此点击是自定义链接点击,而不是页面查看点击)
LinkName = "Scrolled down to Featured Products"
prop3 = "Home Page - Featured Products"
eVar3 = "Home Page - Featured Products"
Events = "event3"
插件是一段 JavaScript 代码,您可以将该代码添加到实施中以执行未内置到产品中的特定功能。插件既可以由您自行构建,也可以由其他 Adobe 客户/合作伙伴或 Adobe 咨询团队构建。
要实施插件,基本上有三个步骤:
如果您将要添加 doPlugins 函数(如下所示)并使用插件,则需要选中用于使 Analytics“s”对象在 Analytics 实施中全局可用的复选框。
转到 Extensions > Installed
在 Adobe Analytics 扩展中,单击 Configure
在 Library Management 下,选中标记为 Make tracker globally accessible
的复选框。正如您在帮助气泡中所看到的,选中该复选框将导致跟踪器在 window.s 下的范围设置为全局,如果您希望在客户 JavaScript 中引用它,则务必要这样做。
要添加插件,您需要添加一个名为 doPlugins 的函数。默认情况下不会添加此函数,但添加后,此函数会由 AppMeasurement 库处理,并在将点击发送到 Adobe Analytics 时最后调用。因此,您可以使用此函数运行某个 JavaScript,以设置更容易通过此方式进行设置的变量。
保持处于 Analytics 扩展中,同时向下滚动到名为 Configure Tracker Using Custom Code.
的部分,并展开此部分
单击 Open Editor
将以下代码粘贴到代码编辑器中:
/* Plugin Config */
s.usePlugins=true
s.doPlugins=function(s) {
/* Add calls to plugins here */
}
保持此窗口处于打开状态,以便执行下一个步骤
实际上,您将在此代码中调用两个插件,但其中一个插件内置于 AppMeasurement 库中,因此您无需添加该插件的调用函数。但是,对于另外一个插件,您还需要添加函数代码。此函数名为 getValOnce()。
此插件的用途是:当访客刷新页面或使用浏览器的返回按钮返回到在其中设置了值的页面时,防止错误地在代码中重复显示该值。在本课程中,您将使用该插件来防止重复显示 clickthrough
事件。
此插件的代码可在 Analytics 文档中找到,但我们仍在此处提供,方便您复制/粘贴。
复制以下代码
/* Adobe Consulting Plugin: getValOnce v2.01 */
s.getValOnce=function(vtc,cn,et,ep){if(vtc&&(cn=cn||"s_gvo",et=et||0,ep="m"===ep?6E4:864E5,vtc!==this.c_r(cn))){var e=new Date;e.setTime(e.getTime()+et*ep);this.c_w(cn,vtc,0===et?0:e);return vtc}return""};
将该代码粘贴到 Analytics 扩展的代码窗口中(如果尚未打开该窗口,请按照上一步骤重新将其打开),注意要完全粘贴到 doPlugins 函数的下方(而不是其内部)。
此时您可以从 doPlugins 中调用此插件。
现在,代码已放置到位且可供引用,接下来您可以在 doPlugins 函数中调用插件。
首先,调用已纳入 AppMeasurement 库中的插件,此插件称为“实用程序”。此插件名为 s.Util.getQueryParam
,这是因为此插件是 s 对象的一部分,属于内置实用程序,且将从 URL 中的查询字符串(基于参数)获取值。
复制以下代码:
s.campaign = s.Util.getQueryParam("cid");
将该代码粘贴到 doPlugins 函数中。这将会在当前页面 URL 中查找名为 cid
的参数,并将其放置到 s.campaign 变量中。
现在,复制以下代码并将其粘贴到 getQueryParam 调用的正下方,从而调用 getValOnce 函数:
s.campaign=s.getValOnce(s.campaign,'s_cmp',30);
此代码将确保 30 天内不会连续多次发送同一值(请参阅相应文档,以了解根据您的需求自定义此代码的方法)。
保存代码窗口
单击 Save to Library and Build
现在,您可以确保插件可正常运行。
验证插件
在 Chrome 浏览器中打开 Luma 网站
单击 Debugger 图标 以打开 Adobe Experience Cloud Debugger
单击 Analytics 选项卡
展开您的报表包
请注意,Analytics 点击中没有 Campaign 变量
保持 Debugger 处于打开状态,返回到 Luma 网站并在 URL 中添加 ?cid=1234
,然后按 Enter,以使用所包含的查询字符串刷新页面
查看 Debugger,并确认存在第二个 Analytics 请求,且该请求中的 Campaign 变量设置为 1234
再次返回并刷新 Luma 页面,同时仍将查询字符串保留在 URL 中
在 Debugger 中查看下一次点击,该点击中应该不存在 Campaign 变量,因为 getValOnce 插件已确保不会重复显示该变量,从而不会看起来像有其他用户通过促销活动跟踪代码进入页面一样。
附加练习:您可以通过更改查询字符串中 cid
参数的值,来反复执行测试。仅当您是首次使用此值运行该页面时,Campaign 变量才应存在。如果您未在 Debugger 中看到 Campaign 值,只需在 URL 的查询字符串中更改 cid
的值,然后按 Enter,便应会在 Debugger 中再次看到该值。
实际上,还有一些在 URL 的查询字符串外部获取参数的不同方式,包括在 Analytics 扩展配置中获取参数。但是,若使用这些其他非插件选项,将无法像在此处使用 getValOnce 插件那样防止不必要的重复。这里介绍的是作者最喜欢采用的方法,您应该根据需要确定最适合自己的方法。
做得不错!您已完成 Analytics 课程。当然,您还可以执行许多其他操作来增强我们的Analytics实施,但希望这已为您提供一些核心技能,以满足您的其他需求。