在电子商务运营中,追踪转化过程中的各项数据指标是非常重要的。本文将为您介绍如何在Shopify的售后页面上设置像素跟踪,以更好地捕获客户动作并优化营销效果。
Shopify的售后页面是在结账流程之后显示的一个页面,在这个页面上设置像素跟踪需要一些特殊的处理。首先需要注意的是,Shopify官方支持团队不支持这种高级自定义操作,需要使用者具有一定的Web开发技能,如HTML、CSS、JavaScript和Liquid等。如果您不熟悉这些技术,建议聘请Shopify专家来协助。
另外,如果您的商店已安装了可以在结账流程中添加售后页面的应用程序,那么您之前在商店中使用的任何自定义像素跟踪代码可能无法捕获特定的跟踪事件。这是因为这些自定义代码仅跟踪订单状态页面上的事件,而不是售后页面上的事件。
为了确保正确捕获转化事件,您可以在售后页面上添加一个专门的跟踪脚本。这个脚本不仅可以跟踪初始转化,还可以跟踪从售后页面发生的其他购买行为,如增销等。添加了售后页面脚本之后,您还需要调整订单状态页面上的脚本,让它忽略已经被售后页面脚本捕获的事件,避免重复计算。
下面是一些售后页面脚本的注意事项:
1. 售后页面脚本与订单状态页面脚本类似,但有一些关键区别:
- 脚本被添加到售后页面,而不是订单状态页面
- 脚本字段只允许使用JavaScript,不支持Liquid代码
- 只允许使用`[removed]`标签,其他HTML标签不被支持
- 脚本运行在沙箱环境中,不包含在主页面上
2. 您只有在商店安装了可以在结账流程中添加售后页面的应用程序时,才能添加售后页面脚本。
3. Shopify支持团队无法提供关于售后页面脚本的帮助,如有需要可以在Shopify社区发帖或寻求Shopify专家的协助。
4. 为了确保像素代码能够正确跟踪所有转化事件,您需要同时在售后页面和订单状态页面上设置跟踪脚本。可以使用`post_purchase_page_accessed`这个Liquid变量来避免重复计算转化事件。
下面是一些示例脚本供参考:
```javascript
// 订单状态页面示例脚本
[removed][removed]
[removed]
// 确保初次转化不被重复跟踪
{%if first_time_accessed == false or post_purchase_page_accessed == true%}
return;
{%endif%}
// 设置Google Analytics
window.dataLayer = window.dataLayer || function() {dataLayer.push(arguments);};
gtag('js', new Date());
gtag('config', 'G-FYNQ742HTX');
// 跟踪初次转化
var order = window.Shopify.order;
gtag('event', 'purchase', {
affiliation: 'MyShopifyStore',
transaction_id: Number(order.id).toString(),
value: order.totalPrice,
currency: order.currency,
items: order.lineItems.map((item) => ({
id: Number(item.id).toString(),
name: item.title,
category: item.product.type,
price: item.price,
quantity: item.quantity,
variant: Number(item.variant.sku).toString(),
})),
});
[removed]
// 售后页面示例脚本
[removed][removed]
[removed]
// 设置Google Analytics
window.dataLayer = window.dataLayer || function() {dataLayer.push(arguments);};
gtag('js', new Date());
gtag('config', 'G-FYNQ742HTX');
// 确保初次转化不被重复跟踪
if (!Shopify.wasPostPurchasePageSeen) {
var order = window.Shopify.order;
// 跟踪初次转化
gtag('event', 'purchase', {
affiliation: 'MyShopifyStore',
transaction_id: Number(order.id).toString(),
value: order.totalPrice,
currency: order.currency,
items: order.lineItems.map(function(item) {
return {
id: Number(item.id).toString(),
name: item.title,
category: item.product.type,
price: item.price,
quantity: item.quantity,
variant: Number(item.variant.sku).toString(),
};
}),
});
// 设置额外转化跟踪
Shopify.on('CheckoutAmended', function(newOrder, previousOrder) {
// 识别哪些商品是新增的
var oldItems = previousOrder.lineItems.map(function(line) {
return line.id;
});
var addedItems = newOrder.lineItems.filter(function(line) {
return oldItems.indexOf(line.id) === -1;
});
// 如果没有新增商品,则跳过转化跟踪
if (addedItems.length === 0) {
return;
}
// 跟踪额外购买
gtag('event', 'purchase', {
affiliation: 'MyShopifyStore',
transaction_id: Number(order.id).toString(),
value: order.totalPrice,
currency: order.currency,
items: addedItems.map(function(item) {
return {
id: Number(item.id).toString(),
name: item.title,
category: item.product.type,
price: item.price,
quantity: item.quantity,
variant: Number(item.variant.sku).toString(),
};
}),
});
});
}
[removed]
```
FQAs:
Q1: 为什么Shopify支持团队不支持售后页面上的像素跟踪?
A1: Shopify支持团队不支持售后页面上的像素跟踪,因为这是一个需要一定Web开发技能的高级自定义操作,包括HTML、CSS、JavaScript和Liquid等。如果您不熟悉这些技术,建议寻求Shopify专家的帮助。
Q2: 如果我的商店已安装了可以在结账流程中添加售后页面的应用程序,之前在商店中使用的自定义像素跟踪代码会有什么问题?
A2: 如果您的商店已安装了可以在结账流程中添加售后页面的应用程序,那么您之前在商店中使用的任何自定义像素跟踪代码可能无法捕获特定的跟踪事件。这是因为这些自定义代码仅跟踪订单状态页面上的事件,而不是售后页面上的事件。
Q3: 如何确保正确捕获转化事件?
A3: 为了确保正确捕获转化事件,您可以在售后页面上添加一个专门的跟踪脚本。这个脚本不仅可以跟踪初始转化,还可以跟踪从售后页面发生的其他购买行为,如增销等。添加了售后页面脚本之后,您还需要调整订单状态页面上的脚本,让它忽略已经被售后页面脚本捕获的事件,避免重复计算。
Q4: 售后页面脚本与订单状态页面脚本有什么区别?
A4: 售后页面脚本与订单状态页面脚本类似,但有一些关键区别:
1. 脚本被添加到售后页面,而不是订单状态页面
2. 脚本字段只允许使用JavaScript,不支持Liquid代码
3. 只允许使用`[removed]`标签,其他HTML标签不被支持
4. 脚本运行在沙箱环境中,不包含在主页面上
5. 您只有在商店安装了可以在结账流程中添加售后页面的应用程序时,才能添加售后页面脚本