1

Я внедряю GTM и GA на нашем веб-сайте и имел очень простой вопрос о передаче данных электронной торговли о показе и кликах продукта, которые я не понимаю из официальной документации GTM.Улучшенный уровень данных электронной торговли Google Tag Manager

В качестве примера я хотел бы обсудить страницу результатов поиска. На странице результатов поиска обычно будет 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 = [{}], мы также будем иметь данные, связанные с языком пользователя, идентификатор пользователя, страна выбрана , etc

Я хотел был бы понять как вычислить щелчок на продукте. В документации Google 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> 

Где должна объявляться эта функция? и где должна быть вызвана эта функция? И как мы передаем значения функции, то есть имя, идентификатор, цену и т. Д. В функцию.

Я не разработчик и использую помощь разработчика, чтобы получить информацию в datalayer из бэкэнд.

ответ

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> 

Passig все другие атрибуты продукта по данным атрибутом в теге

Затем создайте на аналитике события " Продукт Нажмите ", чем объяснять 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>

Смежные вопросы