Show Menu
主题×

Adobe插件:addProductEvent

此插件由Adobe Consulting提供,旨在帮助您从Adobe Analytics中获得更多价值。 Adobe客户关怀部门不提供此插件的支持,包括安装或疑难解答。 如果您需要此插件的帮助,请与贵组织的客户经理联系。 他们可以安排与顾问的会议寻求帮助。
addProductEvent 件会向变量添加数字或货币事 products 件。 如果您希望向变量添加数字或货币事件而不担心产品字符串格式,Adobe products 建议使用此插件。 如果不在变量中使用数字或货币事件,则无需使用此插 products 件。

使用Adobe Experience Platform Launch扩展安装插件

Adobe提供了一个扩展,允许您使用最常用的插件。
  1. Log in to launch.adobe.com using your AdobeID credentials.
  2. 单击所需的属性。
  3. 转到选 Extensions 项卡,然后单击按 Catalog 钮
  4. 安装和发布扩 Common Analytics Plugins 展
  5. 如果尚未创建,请使用以下配置创建标有“初始化插件”的规则:
    • 条件:无
    • 事件:核心——载入的库(页面顶部)
  6. 使用以下配置向上述规则添加操作:
    • 扩展:常见分析插件
    • 操作类型:初始化addProductEvent
  7. 保存更改并发布到规则。

使用Launch自定义代码编辑器安装插件

如果您不想使用插件扩展,则可以使用自定义代码编辑器。
  1. Log in to launch.adobe.com using your AdobeID credentials.
  2. 单击所需的属性。
  3. 转到选项卡, Extensions 然后单击Adobe Analytics扩 Configure 展下的按钮。
  4. 展开折 Configure tracking using custom code 叠面板,以显示按 Open Editor 钮。
  5. 打开自定义代码编辑器,并将下面提供的插件代码粘贴到编辑窗口中。
  6. 保存更改并将其发布到Analytics扩展。

使用AppMeasurement安装插件

在实例化(使用)Analytics跟踪对象后,复制并粘贴AppMeasurement文件中的任意位置的以下代 s_gi 码。 在您的实施中保留代码的注释和版本号可帮助Adobe解决任何潜在问题。
/******************************************* BEGIN CODE TO DEPLOY *******************************************/
/* Adobe Consulting Plugin: addProductEvent v1.0 (Requires apl v3.1 and inList v2.0+ plug-ins) */
s.addProductEvent=function(en,ev,ap){var s=this;if("string"===typeof en)if(ev=isNaN(ev)?"1":String(ev),ap=ap||!1,s.events= s.apl(s.events,en),s.products){var e=s.products.split(",");ap=ap?0:e.length-1;for(var a;ap<e.length;ap++)a=e[ap].split(";") ,a[4]&&a[4].includes("event")?a[4]=a[4]+"|"+en+"="+ev:a[5]?a[4]=en+"="+ev:a[4]||(a[3]||(a[3]=""),a[2]||(a[2]=""),a[1]||(a[1]=""),a[4]=en+"="+ev),e[ap]=a.join(";");s.products=e.join(",")}else s.products=";;;;"+en+"="+ev};

/* Adobe Consulting Plugin: apl (appendToList) v3.2 (Requires inList v2.0 or higher) */
s.apl=function(lv,vta,d1,d2,cc){if(!lv||"string"===typeof lv){if("undefined"===typeof this.inList||"string"!==typeof vta||""===vta)return lv;d1=d1||",";d2=d2||d1;1==d2&&(d2=d1,cc||(cc=1));2==d2&&1!=cc&&(d2=d1);vta=vta.split(",");for(var g=vta.length,e=0;e<g;e++)this.inList(lv,vta[e],d1,cc)||(lv=lv?lv+d2+vta[e]:vta[e])}return lv};

/* Adobe Consulting Plugin: inList v2.1 */
s.inList=function(lv,vtc,d,cc){if("string"!==typeof vtc)return!1;if("string"===typeof lv)lv=lv.split(d||",");else if("object"!== typeof lv)return!1;d=0;for(var e=lv.length;d<e;d++)if(1==cc&&vtc===lv[d]||vtc.toLowerCase()===lv[d].toLowerCase())return!0;return!1};
/******************************************** END CODE TO DEPLOY ********************************************/

使用插件

该方 addProductEvent 法使用以下参数:
  • en (必需,字符串):要添加到变量中最后一个条目的事 products 件。 如果变 products 量为空,则会创建一个“空白”产品条目,并附加事件(及其值)。
  • ev (必需,字符串):为参数中的数字或货币事件分配的 en 值。 未设置 1 时,默认值为。
  • ap (可选,布尔):如果products变量当前包含多个产品条目,则值为 true (或 1 )会将事件添加到所有产品条目。 未设置 false 时,默认值为。
这些 addProductEvent 数据不会返回任何结果。 而是将事件及其值添加到变 products 量。 该插件还会自动将事件添加到变 events 量中,因为该变量也是必需的。

示例调用

示例#1

以下代码将变 s.products 量设置为 ";product1;3;300,;product2;2;122,;product3;1;25;event35=25"
s.products=";product1;3;300,;product2;2;122,;product3;1;25"
s.events="purchase";
s.addProductEvent("event35", "25");

上述代码还将变 s.events 量设置为 "purchase,event35"

示例#2

下面的代码将变 s.products 量设置为 ";product1;3;300;event35=25,;product2;2;122;event35=25,;product3;1;25;event35=25"
s.products=";product1;3;300,;product2;2;122,;product3;1;25";
s.addProductEvent("event35", 25, 1);

当调用中的第三个参 addProductEvent 数是 true (或 1 )时,每个产品条目都会将调用中指定的事件添加到其值中。

示例#3

下面的代码将变 s.products 量设置为 ";product1;3;300;event2=10;eVar33=large|eVar34=men|eVar35=blue,;product2;2;122,;product3;1;25;event33= 12|event34=10|event35=15"
s.products=";product1;3;300;event2=10;eVar33=large|eVar34=men|eVar35=blue,;product2;2;122,;product3;1;25";
s.events="purchase,event2";
s.addProductEvent("event33", "12");
s.addProductEvent("event34", "10");
s.addProductEvent("event35", "15");

上述代码还将变 s.events 量设置为 "purchase,event2,event33,event34,event35"

示例#4

下面的代码将变 s.products 量设置为 ";product1;3;300;event2=10|event33=12|event34=10|event35=15;eVar33=large|eVar34=men|eVar35=blue, ;product2;2;122;event33=12|event34=10|event35=15,;product3;1;25;event33=12|event34=10|event35=15"
s.products=";product1;3;300;event2=10;eVar33=large|eVar34=men|eVar35=blue,;product2;2;122,;product3;1;25"
s.events="purchase,event2"
s.addProductEvent("event33", "12", 1);
s.addProductEvent("event34", 10, 1);
s.addProductEvent("event35", "15", 1);

上述代码还将变 s.events 量设置为 "purchase,event2,event33,event34,event35"
调用中的第二个参数可以是整数 ​,也可以是表示整数/数字的字符串

示例#5

s.products 果尚未设置,以下代码将其设置为 ";;;;event35=25"
s.addProductEvent("event35", "25");

上述代码还附 "event35" 加到结 s.events ,如 ​果尚未设置, s.events 则上述代码将设 s.events 置为 "event35"

版本历史

1.0(2019年10月7日)

  • 第一版。