购买明细变量提供了指定交易中已售产品的相关信息。您可以将该变量添加到 Floodlight 事件代码段、Floodlight 代码、Google 跟踪代码管理器数据层或 Google 跟踪代码管理器宏中。
根据添加变量的方式,使用下面一种格式:
-
如果您使用 Google 代码,请直接在 Floodlight 事件代码段中将购买明细变量的格式设置为 JSON 对象。
- 如果您使用 Floodlight iframe 代码或图片代码,或者要将数据作为宏传递给 Google 跟踪代码管理器,请将购买明细变量的格式设置为可分成一组字段的字符串。
-
如果您要将数据推送到 Google 跟踪代码管理器的数据层,请将此变量的格式设置为包含购买明细字段的 JSON 对象。
Floodlight 事件代码段中的 JSON 格式要求
如果您使用 Google 代码,应在事件代码段中将购买明细指定为 JSON items
数组,还应指定 country
和 language
字段。数组中的每一项都包含以下字段:
id
price
-
quantity
例如:
<!--
Event snippet for Thank You on http://www.example.com/thanks: Please do not remove.
Place this snippet on pages with events you’re tracking.
Creation date: 11/01/2017
-->
<script>
gtag('event', 'purchase',
{
'allow_custom_scripts': true,
'send_to': 'DC-1234567/group1/thank123+transactions',
'transaction_id': '012345',
'value': 129.97,
'items': [
{ 'id': '123456755559',
'price': '19.99',
'quantity': 1
},
{ 'id': '123456788889',
'price': '54.00',
'quantity': 2
}
],
'country': 'us',
'language': 'en'
}
);
</script>
<noscript>
<img src="https://ad.doubleclick.net/ddm/activity/src=1234567;type=group1;cat=thank123;
qty=1;cost=129.97;dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;tfua=;npa=;
ord=012345;prd=i1:123456755559|p1:19.99|q1:1|i2:123456788889|p2:54.0|q2:2|c:us|l:en?" width="1" height="1" alt="">
</noscript>
<!-- End of event snippet: Please do not remove -->
注意:由 Search Ads 360 生成的事件代码段包含可选的 <noscript>
代码,此代码包含 Floodlight 图片代码。系统会使用这个代码来报告在不支持 JavaScript 的浏览器中发生的转化。
数据层中的 JSON 格式要求
如果您使用 Google 跟踪代码管理器,则应将购买明细字段指定为 JSON ecommerce.purchase.products
数组中的元素:
'ecommerce':{
'purchase':{
'products': [{
'id': 'String',
'price': 'Floating point',
'quantity': Integer,
'country': 'String', // Optional
'language': 'String', // Optional
'accountId': 'String' // Optional
},
{
… // Each SKU (product) in the transaction
// is in its own array item.
}]
}
}'
请注意,如果您要将购买明细变量添加到 Floodlight 事件代码段,则此 JSON 对象的字段名称将与您使用的 JSON 对象不同。
当您将购买明细推送到数据层时,实际上就是将数据存储在 Google Analytics(分析)用于生成产品报表的同一个对象中,而这些产品曾在您网站上出售过。也就是说,如果您同时使用 Search Ads 360 和 Google Analytics(分析)生成购买明细报表,您的网站开发者就可以使用同一个对象来存储这两种产品的数据。
字符串格式要求
在字符串格式中,应将每个购买明细字段都指定为采用以下格式的键值对:
[字段 ID][索引]:[值]
- [字段 ID] 确定了要报告的值的类型。
- [索引] 指明了要报告哪个商品的值。
- [值] 提供了产品销售的相关信息。
请使用 |(竖线)分隔各个字段。例如:
i1:123456755559|p1:19.99|q1:1|i2:123456788889|p2:54.0|q2:2
购买明细字段
字段 |
字符串格式的 ID |
类型 |
是否必需 |
说明 |
|
|
字符串 |
是 |
已售出产品的 ID。此 ID 必须与 Google Merchant Center 中的产品 ID 一致。 |
|
|
浮点数 |
是 |
已售出产品的单价。 请勿添加货币符号。 |
|
|
整数 |
是 |
已售出产品的件数。 |
|
|
字符串(ISO 3166 国家/地区代码) |
否 |
针对包含相关产品数据的 Merchant Center Feed 进行注册的国家/地区。 只有在商品 ID 在多个 Merchant Center Feed 中不唯一时,才需要指定此字段。 为每个产品仅指定一次国家/地区(它不是一个重复字段)。如果您没有指定此字段,则 Search Ads 360 会选择包含产品 ID 的 Merchant Center Feed,并对“销售的产品”维度使用此 Feed 的属性。 |
|
|
字符串(ISO 639 语言代码) |
否 |
针对包含相关产品数据的 Merchant Center Feed 进行注册的语言。 只有在商品 ID 在多个 Merchant Center Feed 中不唯一时,才需要指定此字段。 如果您没有指定此字段,则 Search Ads 360 会选择包含产品 ID 的 Merchant Center Feed,并对“销售的产品”维度使用此 Feed 的属性。 |
特殊字符和网址编码
:
(冒号)和 |
(竖线)在字符串格式中用作字段分隔符。Search Ads 360 无法接受包含这些字符的数据作为字段中的值,即使您使用的是其中一种 JSON 格式也是如此。
对于所有 Floodlight 数据,还不接受以下字符:
;
、<
、>
、?
假设某笔交易包含以下商品:
-
商品 1
- 名称:m-dress-orange-xl
- UPC:123456755559
- 单价:19.99 美元
- 数量:1
-
商品 2
- 名称:m-polo-green-l
- UPC:123456788889
- 单价:54 美元
- 数量:2
事件代码段中的购买明细变量会包含以下字段:
'items': [
{ 'id': '123456755559',
'price': '19.99',
'quantity': 1
},
{ 'id': '123456788889',
'price': '54.00',
'quantity': 2
}
]
购买明细变量在 Floodlight iframe 代码中的显示方式如下:
i1:123456755559|p1:19.99|q1:1|i2:123456788889|p2:54.0|q2:2
除了购买明细变量以外,Floodlight 代码或事件代码段还会指定以下数据:
-
Floodlight 活动组的 ID
-
Floodlight 活动的 ID
-
交易 ID(订单 ID)
-
交易总价值:129.97 美元 =(1 * 19.99 美元 + 2 * 54 美元)
-
数量:3(您可以定义此字段的确切含义;不妨考虑使用它来针对购物车内的商品总数生成报表。)
-
其他任何自定义 Floodlight 变量
包含事件代码段的最终全局网站代码将如下所示:
<!--
Start of global snippet: Please do not remove
Place this snippet between the <head> and </head> tags on every page of your site.
-->
<!-- Google Tag (gtag.js) - DoubleClick -->
<script async src="https://www.googletagmanager.com/gtag/js?id=DC-1234567"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments)};
gtag('js', new Date());
gtag('config', 'DC-1234567');
</script>
<!-- End of global snippet: Please do not remove -->
<!--
Event snippet for Thank You on http://www.example.com/thanks: Please do not remove.
Place this snippet on pages with events you’re tracking.
Creation date: 11/01/2017
-->
<script>
gtag('event', 'purchase',
{
'allow_custom_scripts': true,
'send_to': 'DC-1234567/group1/thank123+transactions',
'transaction_id': '012345',
'value': 129.97,
'items': [
{ 'id': '123456755559',
'price': '19.99',
'quantity': 1
},
{ 'id': '123456788889',
'price': '54.00',
'quantity': 2
}
],
'country': 'us',
'language': 'en'
}
);
</script>
<noscript>
<img src="https://ad.doubleclick.net/ddm/activity/src=1234567;type=group1;cat=thank123;
qty=1;cost=129.97;dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;tfua=;npa=;
ord=012345;prd=i1:123456755559|p1:19.99|q1:1|i2:123456788889|p2:54.0|q2:2|c:us|l:en?" width="1" height="1" alt="">
</noscript>
<!-- End of event snippet: Please do not remove -->
以下示例展示了包含购买明细变量的 Floodlight iframe 代码:
您可以使用 Merchant Center 通过多个 Feed 提交产品,每个 Feed 定位到特定的语言和国家/地区。例如,如果您在美国和加拿大销售同一组产品,则可以设置 3 个 Feed,分别包含这些产品在美国的价格和说明、针对使用法语的加拿大人的价格和说明,以及针对使用英语的加拿大人的价格和说明。
如果您提交的 Feed 包含相同的产品 ID,但目标语言或国家/地区有所不同,则您需要在购买明细变量中添加相应的语言和国家/地区代码。例如,事件代码段中的以下 items
数组及 country
和 language
字段根据定位到法裔加拿大人的 Feed 记录了一次购买:
'items': [
{ 'id': '123456788889',
'price': '19.99',
'quantity': 1
},
{ 'id': '123456755559',
'price': '54.00',
'quantity': 2
}
],
'country': 'ca',
'language': 'fr'
只需确保使用 ISO 两位数的国家/地区代码和语言代码即可。