我在我们的网站上实施了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,所选国家/地区等相关的数据
我想了解如何计算产品上的点击次数。在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>
这个函数应该在哪里宣布?这个函数应该在哪里调用?我们如何将产品的价值,即名称,ID,价格等传递给函数。
我不是开发人员,会利用开发人员的帮助从后端将信息传输到数据层。
答案 0 :(得分: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传递所有其他产品属性
然后在分析事件“产品点击”上创建,而不是解释here
希望帮助你!
答案 1 :(得分: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>
&#13;