代码之家  ›  专栏  ›  技术社区  ›  tonjaggart

Google Tag Manager未向Analytics发送电子商务数据

  •  1
  • tonjaggart  · 技术社区  · 7 年前

    我通过GTM添加了下面的代码,当我进行测试购买时,我看到了数据层,但电子商务数据没有发送到analytics。我在成功页面的页面视图上启动了标记。

    <script>
    window.dataLayer = window.dataLayer || [];
    
    var productArray = [];
       var x = document.getElementsByClassName("ved");
       var quantity = document.getElementsByClassName("qty-class");
       var sku = document.getElementsByClassName("productid");
       var price = document.getElementsByClassName("price-class");
    
            var y = x[0].innerHTML;
            var len=x.length;
        for(i=0; i < len; i++){
          var pO = {};
          pO.name = x[i].innerHTML;
          pO.quantity = parseInt(quantity[i].innerHTML);
          pO.price = parseInt(price[i].innerText);
          pO.sku = sku[i].innerHTML;
          pO.category = 'MyCategory';
    
          productArray.push(pO);
        };
    
       var revenue = document.getElementById("order-total").innerText;
       var ship = document.getElementById("shipping").innerText;
       var tid = document.getElementById("t_id").innerText;
    
    dataLayer.push({
    'transactionId': tid,
    'transactionAffiliation': 'MyWebsite',
    'referrer':{{ref}},
    'transactionTotal': parseInt(revenue),
    'transactionTax': 0,
    'transactionShipping':parseInt(ship),
    'transactionProducts': productArray,
    'event':'transactioncomplete'
    }); 
    
    </script>
    
    2 回复  |  直到 7 年前
        1
  •  2
  •   nyuen    7 年前

    看起来您正在实施标准的电子商务跟踪(而不是增强的电子商务)。要将事务跟踪到GA中,需要使用“transaction”类型标记,而不是pageview标记。应该很清楚 here ( https://support.google.com/tagmanager/answer/6107169?hl=en )如何在GTM中设置。您的活动 transactioncomplete 然后将触发此标记。

        2
  •  0
  •   Brian Norman    7 年前

    首先,确保您在GA的管理部分启用了增强型电子商务。其次,看起来您缺少数据层中的电子商务部分。请参见 GTM docs