0

我需要通过谷歌标签管理器将我的产品范围自定义维度传递到谷歌分析。我只能读取我的产品对象数组中的第一个变量。而且我的分析中根本没有显示自定义维度(即使是所有维度的第一个值)。

我已在 Analytics 中将自定义维度设置为产品范围: 在此处输入图像描述

然后在 GTM 中,我在标签中设置了自定义维度。 在此处输入图像描述

在维度值中,我使用了进入结构并找到变量 productSize 的变量。

在此处输入图像描述

这是我的代码:

<script>
    dataLayer.push({
      'event': 'productImpression',
      'ecommerce': {
        'impressions': [
         {
           'name': 'Android tričko',
           'id': '12345',
           'price': '299',
           'brand': 'Google',
           'category': 'Pánská trička',
           'variant': 'bílá',
           'list': 'Search Results',
           'productSize': 'L',          // product scoped custom dimension
           'position': 1            
         },
         {
           'name': 'Donut Friday Scented T-Shirt',
           'id': '67890',
           'price': '33.75',
           'brand': 'Google',
           'category': 'Apparel',
           'variant': 'Black',
           'list': 'Search Results',
           'productSize': 'XL',         // product scoped custom dimension
           'position': 2
         }]
      }
    });
</script>

正如我所说,问题是我只能读取我的自定义维度(“L”)的第一个值(显然)。我应该用什么来代替变量点表示法中的零符号来获取所有值(“L”、“XL”)?

我需要将每个产品的所有值传递给 Analytics。我是否必须将每个产品推送到单独的 dataLayer.push() 中?我在 Analytics 中什么都看不到的问题在哪里?请帮忙。

4

1 回答 1

1

您不能使用通过界面为维度指定的名称。您必须使用“维度”关键字加上数字索引(创建顺序),因此报告中称为“productSize”的维度在您的示例中将在代码中被称为“维度1”:

...
'list': 'Search Results',
'dimension1': 'L',          // product scoped custom dimension
'position': 1       
...

之后,GA 将自动从数据层中选择您的尺寸。

于 2016-11-06T16:33:16.307 回答