产品

products 变量会跟踪与其关联的产品和属性。此变量通常在单个产品页面、购物车页面和购买确认页面上设置。它是一个多值变量,这意味着您可以在同一次点击中发送多个产品,Adobe 会将该值解析为单独的维度项目。

注意

如果在点击中设置此变量,而 events 变量中没有购物车事件,则产品查看次数量度将递增 1。确保使用 products 变量对每次点击设置适当的购物车事件。

Adobe Experience Platform Launch 中的产品

Launch 中没有专门用于设置此变量的字段;但是,存在多个第三方扩展可帮助进行此设置。

  1. 使用您的 Adobe ID 凭据登录 launch.adobe.com
  2. 单击所需的属性。
  3. 转到扩展选项卡,然后单击目录以查看所有可用的扩展。
  4. 搜索术语“product”,结果会显示若干可用于设置此变量的扩展。

您可以使用其中一个扩展,也可以按照下面的 AppMeasurement 语法使用自定义代码编辑器。

AppMeasurement 和 Launch 自定义代码编辑器中的 s.products

s.products 变量是一个字符串,其中包含每个产品的多个分隔字段。每个产品在所有字段中最多可包含 100 字节。在字符串中使用分号 (;) 分隔每个字段。

  • 类别(可选):总体产品类别。贵组织可决定如何划分产品类别。
  • 产品名称(必需):产品的名称。
  • 数量(可选):购物车中此产品的数量。此字段仅适用于具有购买事件的点击。
  • 价格(可选):以小数表示的产品总价格。如果数量大于 1,则将价格设置为总价,而不是产品单价。调整此值的货币以与 currencyCode 变量匹配。请勿在此字段中包含货币符号。此字段仅适用于具有购买事件的点击。
  • 事件(可选):与产品绑定的事件。使用管道字符 (|) 分隔多个事件。有关更多信息,请参阅事件
  • eVar(可选):与产品绑定的推销 eVar。使用管道字符 (|) 分隔多个推销 eVar。有关更多信息,请参阅推销 eVar
// Set a single product using all available fields
s.products = "Example category;Example product;1;3.50;event1=4.99|event2=5.99;eVar1=Example merchandising value 1|eVar2=Example merchandising value 2";

此变量在同一点击中支持多个产品。它对于购物车和包含多种产品的购买非常有用。虽然每个产品具有 100 字节的限制,但 products 变量的总长度为 64 K。在字符串中使用逗号 (,) 分隔每个产品。

// Set multiple products - useful for when a visitor views their shopping cart
s.products = "Example category 1;Example product 1;1;3.50,Example category 2;Example product 2,1,5.99";
重要

从产品名称、类别和推销 eVar 值中去除所有分号、逗号和管道字符。如果产品名称包含逗号,则 AppMeasurement 会将其解析为新产品的开头。此错误解析会丢掉产品字符串的其余部分,导致维度和报表中的数据不正确。

示例

当省略字段并包含多个产品时,products 变量会非常灵活。这种灵活性可能会使您容易丢失分隔符,从而导致您的实施向 Adobe 发送错误数据。

// Include only product and category. Common on individual product pages
s.products = "Example category;Example product";

// Include only product name if you do not want to use product category
s.products = ";Example product";

// One product has a category, the other does not. Note the comma and adjacent semicolon to omit category
s.products = "Example category;Example product 1,;Example product 2";

// A visitor purchases a single product; record quantity and price
s.events = "purchase";
s.products = "Example category;Example product;1;6.99";

// A visitor purchases multiple products with different quantities
s.events = "purchase";
s.products = "Example category;Example product 1;9;26.91,Example category;Example product 2;4;9.96";

// Attribute currency event1 only to product 2 and not product 1
s.events = "event1";
s.products = "Example category 1;Example product 1;1;1.99,Example category 2;Example product 2;1;2.69;event1=1.29";

// Use multiple numeric events in the product string
s.events = "event1,event2";
s.products = "Example category;Example product;1;4.20;event1=2.3|event2=5";

// Use merchandising eVars without any events. Note the adjacent semicolons to skip events
s.products = "Example category;Example product;1;6.69;;eVar1=Merchandising value";

// Use merchandising eVars without category, quantity, price, or events
s.products = ";Example product;;;;eVar1=Merchandising value";

// Multiple products using multiple different events and multiple different merchandising eVars
s.events = "event1,event2,event3,event4,purchase";
s.products = "Example category 1;Example product 1;3;12.60;event1=1.4|event2=9;eVar1=Merchandising value|eVar2=Another merchandising value,Example category 2;Example product 2;1;59.99;event3=6.99|event4=1;eVar3=Merchandising value 3|eVar4=Example value four";

如果使用数 digitalData,则可以对对象数 digitalData.product 组进行迭代:

for(var i=0; i<digitalData.product.length; i++) {
    // Add individual product info to the product string
    s.products += digitalData.product[i].category.primaryCategory + ";" + digitalData.product[i].productInfo.productName;
    // If there are more products, add a comma
    if(i != digitalData.product.length-1) {
        s.products += ",";
    }
}

On this page

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now