首页 > 解决方案 > 数据层变量中的逗号分隔列表

问题描述

我在页面上有一个类别的数据层变量。我已经正确触发了这个,但是这个变量中的值可以是多个类别,因此显示为一个逗号分隔的列表:

dataLayer = [{
'storeCategory': 'major store', 'food', 'childrenswear', 'health & beauty'
 }]; 

我想做的是为列表中的每个类别触发一个 GA 事件:

Event catgeory: "Store"
Event action: "ViewCategory"
Event label: {storeCategory value}

我觉得我需要使用自定义 JavaScript 变量来解析列表,但不确定它如何与触发器或标签链接。

标签: google-tag-manager

解决方案


  1. 您的 dataLayer 不正确,“storeCategory”变量应该是一个数组,我认为您只是缺少括号。

我不确定您需要多少帮助,但基本上您需要:

  1. 创建一个数据层变量以捕获 storeCategory 数组。

  2. 创建一个在“所有页面”上触发的自定义 html 标记以循环遍历 storeCategory 数组,如下所示:

.

<script>
  var cats = {{store category}};
  var catLen = cats.length;

  for (var i = 0; i < catLen; i++){
   dataLayer.push({
     'event': 'category-view',
     'category':cats[i]
   });

  }
</script>
  1. 创建另一个数据层变量以捕获步骤 2 中的“类别”变量。

  2. 创建一个自定义事件触发器以在“类别视图”或您命名的任何内容上触发。

  3. 创建一个 GA 事件代码并在“标签”中捕获“类别”变量,确保将其设置为非交互。


推荐阅读