首页 文章

Google跟踪代码管理器增强了电子商务数据层

提问于
浏览
1

我正在我们的网站上实施GTM和GA,并且有一个非常基本的问题,即关于产品印象和点击的电子商务数据,我不会从官方GTM文档中理解 .

作为一个例子,我想讨论搜索结果页面 . 我们的搜索结果页面通常包含50-100个产品列表 . SRP将加载预先加载在该部分的dataLayer = []部分中的产品展示,其中包含Google跟踪代码管理器所需的所有变量,以便使用正确的命名约定进行展示计算 . 作为一个例子,我想分享页面的HTML伪代码

<html>
<head>
....
....
    <script>
        dataLayer=[{
            'userID':'sdvkn3434mwgn4nk',
            'country':'USA',
            'language':'en-us',
            'ecommerce': {
                currencyCode': 'USD',
                'impressions': [
                    {
                     'name': 'Triblend Android T-Shirt',
                     '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
                 }]
            }
        }
    </script>
</head>
<body>
    ...
    ...
    <a href="www.example.com/12345.html">Triblend Android T-Shirt</a>
    <a href="www.example.com/12345.html">Donut Friday Scented T-Shirt</a>
    ....
</body>

在此dataLayer = [{}]中,我们还将提供与用户语言,用户ID,所选国家/地区等相关的数据

我想了解如何计算产品上的点击次数 . 在谷歌文档中,https://developers.google.com/tag-manager/enhanced-ecommerce#product-clicks提到使用以下代码来跟踪它 .

<script>
function(productObj) {
  dataLayer.push({
    'event': 'productClick',
    'ecommerce': {
      'click': {
        'actionField': {'list': 'Search Results'},      
        'products': [{
          'name': productObj.name,                      
          'id': productObj.id,
          'price': productObj.price,
          'brand': productObj.brand,
          'category': productObj.cat,
          'variant': productObj.variant
         }]
       }
     },
     'eventCallback': function() {
       document.location = productObj.url
     }
  });
}
</script>

该函数应在何处声明?这个函数应该在哪里调用?我们如何将产品的 Value ,即名称,ID,价格等传递给函数 .

我不是开发人员,会利用开发人员的帮助将信息从后端传入数据层 .

2 回答

  • 0

    试试这个HTML:

    <body>
      ...
      ...
      <a class="toMisure" data-id="12345" data-name="Triblend Android T-Shirt"  href="www.example.com/12345.html">Triblend Android T-Shirt</a>
    </body>
    

    而这个Javascript Jquery:

    <script>
    $(function(){
     $('.toMisure').click(function(){
        dataLayer.push({
          'event': 'productClick',
          'ecommerce': {
          'click': {
          'actionField': {'list': 'Search Results'},      
          'products': [{
          'name': $(this).attr('data-name'),                      
          'id': $(this).attr('data-id'),
          'price': ...,
          'brand': ...,
          'category': ...,
          'variant': ...
         }]
        }
       },
       'eventCallback': function() {
         document.location = $(this).attr('href')
       }
      });
     });
    });
    </script>
    

    通过标记a中的data-attribute传递所有其他产品属性

    然后创建分析事件"Product Click"而不是解释here

    希望能帮到你!

  • 0

    我不确定为什么Google代码使用匿名函数 . 您可以将其命名为trackProductClick . 然后你可以在任何地方声明它并从onclick事件中调用它:

    <a href="productname.html" onClick="trackProductClick({name: 'My Shoe Product', id: '1234', price: '100.00', brand: 'nike', cat: 'Shoes', varient: 'brown'})">Product Link</a>
    

相关问题