Adobe 插件:getNewRepeat

重要

此插件由 Adobe Consulting 团队提供,旨在帮助您从 Adobe Analytics 中获取更多的价值。Adobe 客户关怀团队不提供对此插件的支持,包括安装或疑难解答。如果您需要关于此插件的帮助,请与贵组织的帐户管理员联系。他们可以为您安排与顾问的答疑会,以便您向顾问寻求帮助。

getNewRepeat 插件允许您确定网站访客是新访客还是所需天数内的回访访客。如果您想要使用自定义天数将访客识别为“新”访客,Adobe 建议使用此插件。如果 Analysis Workspace 中的新访客/回访访客维度满足贵组织的需求,则无需使用此插件。

使用 Adobe Experience Platform 中的标记安装插件

Adobe 提供了一个扩展,通过该扩展,您可以使用一些常用插件。

  1. 使用您的 Adobe ID 凭据登录数据收集 UI
  2. 单击所需的属性。
  3. 转到扩展选项卡,然后单击目录按钮
  4. 安装并发布常用 Analytics 插件扩展
  5. 如果还没有任何扩展,请使用以下配置创建一个标签为“初始化插件”的规则:
    • 条件:无
    • 事件:核心 - 已加载的库(页面顶部)
  6. 使用以下配置向上述规则添加操作:
    • 扩展:常用 Analytics 插件
    • 操作类型:初始化 getNewRepeat
  7. 保存并发布对上述规则所做的更改。

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

如果您不想使用插件扩展,则可以使用自定义代码编辑器。

  1. 使用您的 Adobe ID 凭据登录数据收集 UI
  2. 单击所需的属性。
  3. 转到扩展选项卡,然后单击 Adobe Analytics 扩展下的配置按钮。
  4. 展开使用自定义代码配置跟踪折叠面板,这会显示打开编辑器按钮。
  5. 打开自定义代码编辑器,并将下面提供的插件代码粘贴到编辑窗口中。
  6. 保存并发布对此 Analytics 扩展所做的更改。

使用 AppMeasurement 安装此插件

在实例化(使用 s_gi)Analytics 跟踪对象后,将以下代码复制并粘贴到 AppMeasurement 文件中的任意位置。在您的实施中保留代码的注释和版本号可帮助 Adobe 对任何潜在问题进行疑难解答。

/******************************************* BEGIN CODE TO DEPLOY *******************************************/
/* Adobe Consulting Plugin: getNewRepeat v3.0 (Requires AppMeasurement) */
function getNewRepeat(d){var a=d;if("-v"===a)return{plugin:"getNewRepeat",version:"3.0"};var d=function(){if("undefined"!==typeof window.s_c_il)for(var c=0,b;c<window.s_c_il.length;c++)if(b=window.s_c_il[c],b._c&&"s_c"===b._c)return b}();"undefined"!==typeof d&&(d.contextData.getNewRepeat="3.0");window.cookieWrite=window.cookieWrite||function(c,b,f){if("string"===typeof c){var h=window.location.hostname,a=window.location.hostname.split(".").length-1;if(h&&!/^[0-9.]+$/.test(h)){a=2<a?a:2;var e=h.lastIndexOf(".");if(0<=e){for(;0<=e&&1<a;)e=h.lastIndexOf(".",e-1),a--;e=0<e?h.substring(e):h}}g=e;b="undefined"!==typeof b?""+b:"";if(f||""===b)if(""===b&&(f=-60),"number"===typeof f){var d=new Date;d.setTime(d.getTime()+6E4*f)}else d=f;return c&&(document.cookie=encodeURIComponent(c)+"="+encodeURIComponent(b)+"; path=/;"+(f?" expires="+d.toUTCString()+";":"")+(g?" domain="+g+";":""),"undefined"!==typeof cookieRead)?cookieRead(c)===b:!1}};window.cookieRead=window.cookieRead||function(c){if("string"===typeof c)c=encodeURIComponent(c);else return"";var b=" "+document.cookie,a=b.indexOf(" "+c+"="),d=0>a?a:b.indexOf(";",a);return(c=0>a?"":decodeURIComponent(b.substring(a+2+c.length,0>d?b.length:d)))?c:""};a=a?a:30;d="s_nr"+a;var k=new Date,m=cookieRead(d),n=m.split("-"),l=k.getTime();k.setTime(l+864E5*a);if(""===m||18E5>l-n[0]&&"New"===n[1])return cookieWrite(d,l+"-New",k),"New";cookieWrite(d,l+"-Repeat",k);return"Repeat"};
/******************************************** END CODE TO DEPLOY ********************************************/

使用此插件

getNewRepeat 函数使用以下参数:

  • d(整数,可选):将访客重置回 "New" 的两次访问之间所需的最小天数。如果未设置此参数,则默认为 30 天。

如果插件设置的 Cookie 不存在或已过期,则此函数将返回值 "New"。如果插件设置的 Cookie 存在,并且自当前点击以来的时间以及 Cookie 中设置的时间大于 30 分钟,则它将返回值 "Repeat"。在整个访问期间,此函数将返回相同的值。

该插件使用名为 "s_nr[LENGTH]" 的 Cookie,其中 [LENGTH] 等于 d 参数。Cookie 包含一个 Unix 时间戳,该时间戳表示访客的当前时间和当前状态("New""Repeat")。

示例

// Sets eVar1 to "New" if it is the visitor's first visit to the site, or they have not visited in at least 30 days. Otherwise, sets eVar1 to "Repeat".
s.eVar1 = getNewRepeat();

// Sets eVar2 to "New" if it is the visitor's first visit to the site, or they have not visited in at least a year (365 days). Otherwise, sets eVar2 to "Repeat".
s.eVar2 = getNewRepeat(365);

版本历史记录

3.0(2021 年 3 月 19 日)

  • 以上下文数据形式添加了版本号。

2.1(2019 年 9 月 30 日)

  • 重新整理了 JavaScript 逻辑以减小插件大小

2.0(2018 年 4 月 16 日)

  • 使用较小的代码大小重新编译
  • 删除了命名 Cookie 以存储访问信息的功能。该插件现在会根据传递到 d 参数的值动态命名 Cookie。

在此页面上