Javascript Google UA增强型电子商务:ID的不同变量名
使用GTM和增强型电子商务:我需要在第三方系统上跟踪电子商务,所需的ID字段不是ID或transactionID。。。它被称为confirmID。我试图从购买中检索一些值,包括交易金额,但无法使用数据层,因此我在GTM中使用了一个自定义JavaScript变量,并构建了一个标记来从自定义变量读取数据 如果我的ID字段名与所需的ID字段名不匹配,我该如何进行此操作?下面是我的JavaScript变量:Javascript Google UA增强型电子商务:ID的不同变量名,javascript,google-analytics,google-tag-manager,Javascript,Google Analytics,Google Tag Manager,使用GTM和增强型电子商务:我需要在第三方系统上跟踪电子商务,所需的ID字段不是ID或transactionID。。。它被称为confirmID。我试图从购买中检索一些值,包括交易金额,但无法使用数据层,因此我在GTM中使用了一个自定义JavaScript变量,并构建了一个标记来从自定义变量读取数据 如果我的ID字段名与所需的ID字段名不匹配,我该如何进行此操作?下面是我的JavaScript变量: function() { var ecommerceData = { 'ec
function() {
var ecommerceData = {
'ecommerce': {
'purchase': {
'actionField': {'confirmid':'T123456',
'tik_value':'500.00',
'pids':'800911',
'discounts':'chipster' }
}
}
};
return ecommerceData;
}
在自定义JS宏中使用适当的增强型电子商务方案
正确的购买方案如下所示:
{
'ecommerce': {
'purchase': {
'actionField': {
'id': 'T12345', // Transaction ID. Required for purchases and refunds.
'affiliation': 'Online Store',
'revenue': '75.43', // Total transaction value (incl. tax and shipping)
'tax':'4.90',
'shipping': '5.99',
'coupon': 'SUMMER_SALE'
},
'products': [{ // List of productFieldObjects.
'name': 'Blah T-Shirt', // Name or ID is required.
'id': '12345',
'price': '23',
'brand': 'Spaceship',
'category': 'Cool stuffs',
'variant': 'Bloody red',
'quantity': 1,
'coupon': 'esale2015',
'metric1': 1,
'dimension2':'Better World'
},
{
'name': 'Donut Costume',
'id': '67890',
'price': '47.1',
'brand': 'EatMe & Corp.',
'category': 'Madman'z gallery',
'variant': 'Pink with dots',
'quantity': 1,
'metric1': 1,
'dimension2':'Dark Adventure'
}]
}
}
}
将格式错误的原始对象传递到宏
宏名称:{{ECOM_DATA}}
有关:
{
'ecommerce': {
'purchase': {
'actionField': {'confirmid':'T123456',
'tik_value':'500.00',
'pids':'800911',
'discounts':'chipster'
}
}
}
将格式错误的数据连接到正确的方案
进一步改进
考虑一些输入保护(重要值不可用的情况)或数字值的日期类型保护等
文档:
用于增强电子商务的自定义宏:
购买操作字段描述:这看起来可能有助于解决我的问题。我花了一点时间来消化和测试它。我会跟进结果。谢谢我一直收到一个解析错误,应该是分号。关注的领域似乎在var源=={{{ECOM_DATA}};线路。在此之前,我将我的自定义宏命名为ECOM_DATA,并使用此错误将宏命名为TDC_ECOMMERCE。。。如果这很重要,对不起,我的错,==是相等运算符。必须只有一个=符号。宏的名称完全由您决定。我为错误道歉,我没有尝试代码,我只是给你写了一个它如何工作的例子。哦,一点也不担心!非常感谢您的反馈!我将很快再次对此进行研究,并将进行更新。
function() {
var source = {{ECOM_DATA}};
var transactionData = source.ecommerce[0].actionField;
var productData = source.ecommerce[0].products;
var ecommerceData = {
'ecommerce': {
'purchase': {
'actionField': {
'id': transactionData.confirmid, // Transaction ID. Required for purchases and refunds.
'revenue': transactionData.revenue, // Total transaction value (incl. tax and shipping)
'coupon': transactionData.discounts
},
'products': [{
'name': productData.name, /
'id': productData.id,
'price': productData.price,
'brand': productData.brand,
'category': productData.cats,
'variant': productData.modification,
'quantity': productData.ammount,
'coupon': productData.coupon,
'metric1': productData.whatever,
'dimension2':productData.collection
}]
}
}
}
return ecommerceData;
}