使用dataLayer中的对象在GTM中创建变量

时间:2016-01-20 14:08:41

标签: google-analytics google-tag-manager

我想知道是否可以使用电子商务dataLayer中的对象在GTM中创建变量?下面是我的脚本,我想在变量中传递产品名称。

AndroidManifest.xml

1 个答案:

答案 0 :(得分:0)

您可以添加一些包含产品名称的html(如果您还没有)。然后,当这些产品与之交互时,例如通过点击将该产品名称发送给GTM。

function sendToGTM (productName) {
  /**
   * send data to GTM
   */
  console.log(productName);
  var data = {
    'detail' : {
        'actionField': {'list': gtm.list},
        'products': [{
            'name':         productName,
            'id':           '123456',
            'price':        '25.0',
            'brand':        'mybrand',
            'category':     'top',
            'list':         gtm.list
        }]
    },
    'impressions': []
  };
  gtm.data.ecommerce = data;
  return data;
}

document.addEventListener('click', function(event){
  /**
   * on click, send product name to gtm function
   */
  if (event.target.classList.contains('product')) {
    sendToGTM(event.target.dataset.productName);
  }
}, false);
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>Create a Variable in GTM using objects in the dataLayer</title>
</head>
<body>

  <div class="products">
    <a href="#">
      <img src="https://c2.staticflickr.com/2/1131/711161806_fcf773a330_z.jpg?zz=1" class="product" data-product-name="Sunny" />
    </a>
    <a href="#">
      <img src="http://indianapublicmedia.org/news/files/2012/06/sun.jpg" class="product" data-product-name="Bright Sun" />
    </a>
    <a href="#">
      <img src="http://mediad.publicbroadcasting.net/p/kbia/files/styles/medium/public/hot%20summer%20sun_jetsandzeppelins_Flickr.jpg" class="product" data-product-name="Sun Shiney Day" />
    </a>
  </div>
  
  
</body>
</html>