0

我在确认页面上部署了以下数据层,该数据层捕获了所有正确的交易数据。在此处输入代码

<!-- Enhanced Ecommerce Data Layer through Google Tag Manager -->
<script>
dataLayer.push({
  'ecommerce': {
    'purchase': {
      'actionField': {
        'id': rtCONFIRMATIONNUMBER_0,            
        'revenue': rtTOTALCOST,        
        'tax':rtTAX_0,
      },
      'products': [{                           
        'name': rtPROPERTYNAME+'-'+rtROOMTYPE_0,    
        'id': rtCONFIRMATIONNUMBER_0,
        'price': rtTOTALCOST,
        'quantity': 1
       }]
    }
  }
},{
    'event': 'purchase'
});
</script>
<!-- END Enhanced Ecommerce Data Layer through Google Tag Manager -->

但是,当用户在结帐时添加一些其他可用的附加组件时,这还不够,我想在相同的事务 ID 下捕获这些附加组件。如何修改它以捕获添加的项目数据?

4

1 回答 1

0

首先,您的dataLayer.push. 如果您计划使用事件触发标签,event则应在与您的对象相同的对象中定义您的密钥:ecommercepurchase

dataLayer.push({
   'ecommerce': {
      // ecommerce stuff
   },
   'event': 'purchase'
})

现在回到您的主要问题,一种选择是将其他附加组件添加为单独的产品:

 dataLayer.push({
   'ecommerce': {
      'purchase': {
         'actionField': {
            'id': rtCONFIRMATIONNUMBER_0,
            'revenue': rtTOTALCOST,
            'tax': rtTAX_0,
         },
         'products': [{
               'name': rtPROPERTYNAME + '-' + rtROOMTYPE_0,
               'id': rtCONFIRMATIONNUMBER_0,
               'price': rtTOTALCOST,
               'quantity': 1
            },
            {
               'name': rtPROPERTYNAME2 + '-' + rtROOMTYPE2_0,
               'id': rtCONFIRMATIONNUMBER2_0,
               'price': rtTOTALCOST2,
               'quantity': 1,
               'category': 'add-on'
            },
            // other product objects like add-ons
         ]
      }
   }
于 2017-06-05T17:30:38.930 回答