我有一个安装了Tag Manager的网站,我在数据层中有以下内容:
window.dataLayer.push({
'ecommerce': {
'currencyCode': 'USD',
'purchase': {
'actionField': {
'id': '2851743',
'affiliation': 'MOS: 8',
'revenue': 75.00,
'tax': .00,
'shipping': 12.00,
'coupon': ''
},
'products': [
{
'brand': 'Existing Customer',
'name': 'Product Name',
'id': '1216M18',
'price': '63',
'category': 'Tickets',
'variant': '12/16/17 2pm',
'quantity': '1',
'dimension2': 'Saturday'
}
]
}
}
});

我在标记管理器中有一个非分析标记的标记,我需要从数据层中提取值,例如ecommerce.purchase.actionField.revenue或ecommerce.purchase.products.id并将它们用作跟踪代码管理器中的自定义变量,以便将它们添加到我的代码中。
但是我似乎无法使用以下格式获取值:ecommerce.purchase.actionField.revenue
我把它放在"数据层变量名称" Tag Manager的变量部分中的变量配置窗口上的字段。
还有其他方法可以获得这些物品吗?
谢谢!
答案 0 :(得分:0)
通常,在增强的ecomm规范中引用这些值将存在严重缺陷。我强烈建议你做以下事情:
dataLayer.push({event:"secondRevenue", revenue: "XXX", products: [XXX]})
设置触发器以在event = "secondRevenue"
创建等于dataLayer.revenue
和dataLayer.products
的变量,并在第二个标记中关联/使用它们
答案 1 :(得分:0)
ecommerce.purchase.products.id无效,请尝试使用ecommerce.purchase.products。我 .id其中 i 是数组中对象的索引
答案 2 :(得分:0)
如果您尝试访问的变量位于对象内(例如"收入"在您的示例中),那么您可以像这样访问它:
ecommerce.purchase.actionField.revenue
如果您尝试访问的变量位于数组中且您的数组只包含一个元素(例如&#34;价格&#34;在您的示例中),那么您可以像这样访问它:< / p>
ecommerce.purchase.products.0.price