1

我收到了一个请求,我们需要创建自定义 javascript 变量来发送产品印象而不是增强型电子商务数据层。有人可以通过为我指出正确的方向来帮助我理解如何实现吗?

TIA

4

2 回答 2

1

你的问题当然不清楚,但我会尽量给你一些选择。首先,如果它是您正在寻找的用例,因为产品印象数据不在 dataLayer 中,而您只想从其他地方获取它们,那么此 Simo Ahava博客文章中描述了该解决方案。如果原因是您不能使用 GTM 标签来发送产品印象,我建议您使用自定义 Javascript 或自定义 HTML 标签来实现您的脚本。该脚本将以任何方式获取您页面的产品数据,然后使用此处所述的手动 ga() 命令. 但这就是问题所在。如果您尝试在实施了 GTM 的页面中发送此信息,您将收到错误消息:“命令被忽略。未知目标:未定义'。那是因为 GTM 使用它自己的跟踪器名称来向 GA 发送数据。要在同一页面上实现您自己的跟踪和 GTM,您应该对代码进行一些更改或添加,以便能够获得正确的跟踪器名称。如何做到这一点并不容易,但本文描述了一种方法

于 2017-04-01T12:51:04.017 回答
0

为了扩展上面的答案,您的分析师只想将产品数组保存到变量中,而不是通过 dataLayer 推送。

例如:

代替:

dataLayer.push({
  'ecommerce': {
    'currencyCode': 'EUR',                       // Local currency is optional.
    'impressions': [
     {
       'name': 'Triblend Android T-Shirt',       // Name or ID is required.
       'id': '12345',
       'price': '15.25',
       'brand': 'Google',
       'category': 'Apparel',
       'variant': 'Gray',
       'list': 'Search Results',
       'position': 1
     },
     {
       'name': 'Donut Friday Scented T-Shirt',
       'id': '67890',
       'price': '33.75',
       'brand': 'Google',
       'category': 'Apparel',
       'variant': 'Black',
       'list': 'Search Results',
       'position': 2
     }]
  }
});

他们要:

var productArray =[{
   'name': 'Triblend Android T-Shirt',       // Name or ID is required.
   'id': '12345',
   'price': '15.25',
   'brand': 'Google',
   'category': 'Apparel',
   'variant': 'Gray',
   'list': 'Search Results',
   'position': 1
 },
 {
   'name': 'Donut Friday Scented T-Shirt',
   'id': '67890',
   'price': '33.75',
   'brand': 'Google',
   'category': 'Apparel',
   'variant': 'Black',
   'list': 'Search Results',
   'position': 2
 }]

这意味着他们可以有选择地触发每个事件的不同产品,而不是依赖于 dataLayer 推送本身。这对于产品印象跟踪很有用。

于 2017-04-03T20:37:30.377 回答