我正在我们的网站上实施 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>
这个函数应该在哪里声明?应该在哪里调用这个函数?以及我们如何将产品的值(即名称、id、价格等)传递给函数。
我不是开发人员,将使用开发人员的帮助将信息从后端获取到数据层。