DataLayer 增强的电子商务附加产品参数 - 如何正确推送它们?
DataLayer Enhanced ecommerce additional product parameters - how to properly push them?
我正在准备一份开发人员简介,以实施 Google 包含数据层和增强型电子商务数据的跟踪代码管理器。我提到了 Google Tag manager Enhanced ecommerce guide and Enhanced ecommerce data types specification。
我想知道的是,通过名为 "ecommerce" 的数据层对象推送的增强型电子商务数据是否也可作为变量在标签管理器中进一步使用,还是仅出于设置目的而推送Google GTM 中的分析代码?我也想在 GTM 中将这些参数与其他标签一起使用。
例如,我想跟踪比 Google 标签管理器增强型电子商务指南指定的更多关于产品的参数。文章说,为了跟踪更多产品参数,您可以通过自定义维度 ( 'dimension1': 'Additional parameter' ) 来实现,但我假设这些参数稍后无法在跟踪代码管理器中作为变量使用?
那么在数据层对象外部或内部指定这些附加参数的正确方法是 "ecommerce" 吗?
谢谢。
您可以将电子商务数据层用于其他标签,只要推送到数据层包含事件(即 key/value 对,其中键为 "event",名称为用于创建自定义事件触发器)。电子商务 dataLayer 的某些部分已经有一个事件(即对于 productClicks,它是 {'event': 'productClick'}),其他部分没有(即 productImpressions 的电子商务对象)。然后,您可以在该事件触发的所有标记中使用电子商务对象,或者在它之后。
dataLayer 中的任何自定义维度也是如此。您将在产品范围内的 GA 后端创建自定义维度,然后将其添加到每个产品:
dataLayer.push({
'event': 'productClick',
'ecommerce': {
'click': {
'actionField': {
'list': 'Search Results'
}, // Optional list property.
'products': [{
'name': "test", // Name or ID is required.
'id': "1234",
'price': 12.33,
'brand': "brand1",
'category': "category1",
'dimension1': "customValue1"
}, {
'name': "test", // Name or ID is required.
'id': "1235",
'price': 9.23,
'brand': "brand2",
'category': "category2",
'dimension1': "customValue4"
}]
}
});
然后您可以访问自定义维度值作为产品对象的一部分 - 例如对于第一个产品的自定义维度,您可以创建一个 dataLayer 变量 "ecommerce.products.0.dimension1" ecommerce.click.products.0.dimension1(这不是错字 - GTM 使用不寻常的符号表示数组索引,即您通过点符号而不是括号访问索引。
我正在准备一份开发人员简介,以实施 Google 包含数据层和增强型电子商务数据的跟踪代码管理器。我提到了 Google Tag manager Enhanced ecommerce guide and Enhanced ecommerce data types specification。
我想知道的是,通过名为 "ecommerce" 的数据层对象推送的增强型电子商务数据是否也可作为变量在标签管理器中进一步使用,还是仅出于设置目的而推送Google GTM 中的分析代码?我也想在 GTM 中将这些参数与其他标签一起使用。
例如,我想跟踪比 Google 标签管理器增强型电子商务指南指定的更多关于产品的参数。文章说,为了跟踪更多产品参数,您可以通过自定义维度 ( 'dimension1': 'Additional parameter' ) 来实现,但我假设这些参数稍后无法在跟踪代码管理器中作为变量使用?
那么在数据层对象外部或内部指定这些附加参数的正确方法是 "ecommerce" 吗?
谢谢。
您可以将电子商务数据层用于其他标签,只要推送到数据层包含事件(即 key/value 对,其中键为 "event",名称为用于创建自定义事件触发器)。电子商务 dataLayer 的某些部分已经有一个事件(即对于 productClicks,它是 {'event': 'productClick'}),其他部分没有(即 productImpressions 的电子商务对象)。然后,您可以在该事件触发的所有标记中使用电子商务对象,或者在它之后。
dataLayer 中的任何自定义维度也是如此。您将在产品范围内的 GA 后端创建自定义维度,然后将其添加到每个产品:
dataLayer.push({
'event': 'productClick',
'ecommerce': {
'click': {
'actionField': {
'list': 'Search Results'
}, // Optional list property.
'products': [{
'name': "test", // Name or ID is required.
'id': "1234",
'price': 12.33,
'brand': "brand1",
'category': "category1",
'dimension1': "customValue1"
}, {
'name': "test", // Name or ID is required.
'id': "1235",
'price': 9.23,
'brand': "brand2",
'category': "category2",
'dimension1': "customValue4"
}]
}
});
然后您可以访问自定义维度值作为产品对象的一部分 - 例如对于第一个产品的自定义维度,您可以创建一个 dataLayer 变量 "ecommerce.products.0.dimension1" ecommerce.click.products.0.dimension1(这不是错字 - GTM 使用不寻常的符号表示数组索引,即您通过点符号而不是括号访问索引。