售后页面上的像素代码跟踪

如果您的商店已安装可向商店结账流程中添加售后页面的应用,那么您在商店中使用的任何自定义像素代码跟踪都可能不会捕获特定跟踪事件。添加到商店的自定义脚本框中的自定义跟踪像素代码仅跟踪订单状态页面上的事件,该页面在结账流程中的售后页面之后显示。如果客户从售后页面离开您的商店,则系统不会跟踪订单状态页面上的事件。

为确保正确捕获转化事件,您可以添加一个脚本,用于跟踪售后页面上的事件。此脚本还可以跟踪通过售后页面进行的其他购买,例如增销。添加售后页面脚本后,您需要调整订单状态页面脚本,以忽略售后页面脚本已捕获的事件。

只有使用自定义跟踪像素代码时,您才需要更改商店跟踪事件的方式。例如,如果您通过在线商店 > 偏好设置来设置 Google Analytics,那么 Google Analytics 将已经开始正确捕获售后页面上的事件。

注意事项

售后页面自定义脚本与订单状态页面自定义脚本类似,但存在几项重要差异:

  • 售后页面自定义脚本将添加到售后页面,而不是订单状态页面。
  • 此字段仅允许输入 JavaScript。不接受 Liquid 代码。
  • 唯一允许使用的 HTML 标签是 <script>
  • 脚本在沙盒中运行,而未包含在主页上。
  • 只有当您的商店已安装可向结账流程中添加售后页面的应用时,您才能添加售后页面脚本。

在沙盒中运行脚本可确保脚本的安全以及可将其用于预期目的。

Shopify 支持团队无法提供售后页面脚本的相关帮助。如果您需要帮助,您可以在 Shopify 社区中发帖或聘请 Shopify 专家

订单状态页面上脚本的兼容性

为确保像素代码正确跟踪所有转化事件,请在售后页面和订单状态页面上均设置跟踪脚本。为避免将转化事件计数两次,您可以在订单状态页面上运行的脚本中使用 post_purchase_page_accessed Liquid 变量。

如果客户到达售后页面并导航到订单状态页面,post_purchase_page_accessed 变量将返回 true。如果客户未到达售后页面,变量将返回 false

例如,您可以在订单状态页面上对脚本使用以下格式:

{% unless post_purchase_page_accessed %}
<script> 
    //insert your tracking script
</script>
{% endunless %}

可用 API

您可以使用 JavaScript 全局变量为跟踪脚本提供所需的数据访问权限。可访问的数据在 window.Shopify 下提供。

跟踪售后页面上的购买

若要跟踪通过售后页面进行的其他购买,您可以订阅 Shopify.on 事件。

订阅后,只要成功应用售后更改集,就会触发以下操作:

  • 系统使用两个 Order 类型的参数 orderoutdated order 来调用您的处理程序。
  • window.Shopify 下的全局变量将更新,以便脚本可以使用更新的数据。

订阅了此活动的处理程序可能只有 500 毫秒的执行时间。请确保提前加载您需要的任何依赖项。

添加售后页面脚本

  1. 在 Shopify 后台中,转到设置 > 结账
  2. 售后自定义脚本字段中,输入您的脚本。
  3. 单击保存

示例脚本

您可以使用以下基本脚本模板来协助您构建自己的售后页面脚本。此示例脚本使用 Google Analytics 跟踪初始转化,并说明如何跟踪其他购买。此示例非常简单,您的最终脚本可能与它不同。

示例脚本文件

订单状态页面的示例脚本:

``` ``` 售后页面的示例脚本: ``` ```

参考

下表包含通过 window.Shopify 向售后自定义脚本公开的属性的类型定义:

字段 定义
window.Shopify
shop 下单商店的详细信息
order 订单的详细信息
pageUrl 当前页面的 URL。
wasPostPurchasePageSeen 客户是否在此结账流程中查看了售后页面。如果该页面是第一次显示,则为 true,否则为 false,例如重新加载此页面。
on(event: string, handler: function): void 订阅事件。目前仅支持 CheckoutAmended 事件。
off(event: string, handler: function): void 处理程序取消订阅给定事件。目前仅支持 CheckoutAmended 事件。
Shop
id 商店的 ID。
currency 商店货币采用 ISO 4217 格式,例如 USD。有关更多详细信息,请参阅 shop.currency
Order
id 订单的内部识别码。
number 订单名称的整数表示形式,例如 1025。
checkoutToken 结账的内部识别码。
customer 与订单关联的客户
lineItem 订单的订单项目
subtotalPrice 应用订单项目和购物车折扣后订单中所有商品的小计价格。小计不包含税费(除非税费已包含在价格中)、发货成本或小费。
totalPrice 订单的总价。
currency 订单所用货币的 ISO 4217 代码。
discounts 应用于订单的折扣总额。
Customer
id 客户的 ID。
email 客户的邮箱。
acceptsMarketing 客户是否已接受营销。如果客户接受营销,此值将为 true,否则为 false
hasAccount 客户邮箱是否与客户账户关联。如果邮箱已在客户账户中列出,此值将为 true,否则为 false。有关详细信息,请参阅 customer.has_account
firstName 客户的名字。
lastName 客户的姓氏。
ordersCount 客户所下订单总数。
totalSpent 客户在所有订单上花费的总金额。
LineItem
finalLinePrice 订单项目中所有商品的总计价格。这等于 line_item.final_price 乘以 line_item.quantity
finalPrice 订单项目的价格,包括所有订单项目级别的折扣金额。
lineLevelTotalDiscount 专门应用于订单项目的所有折扣的总额。这不包括添加到购物车的折扣。
optionsWithValues 商品的产品选项中所选值的数组。有关更多详细信息,请参阅 line_item.options_with_values
originalLinePrice 应用折扣之前订单中包含的所有商品的总计价格。这等于 line_item.original_price 乘以 line_item.quantity
originalPrice 应用折扣前订单项目的原始价格。
price 订单项目的单价。该价格反映应用于订单项目的任何折扣。仅适用于位于德国或法国的商店。
product 订单项目的产品
properties 已添加到购物车的商品的一组自定义信息。有关详细信息,请参阅 line_item.properties
quantity 订单项目的数量。
title 订单项目的标题。有关详细信息,请参阅 line_item.title
variant 订单项目的多属性
Product
id 产品的 ID。
type 产品的类型。
ProductVariant
id 多属性的 ID。
sku 多属性的 SKU。
translate="no"CartDiscount
id 折扣应用程序的内部识别码。
code 折扣码(如果有)。
type 折扣的类型。可能的值为:automaticdiscount_codemanualscript
amount 通过折扣所节省的订单价格的总金额。

准备好开始使用 Shopify 进行销售了吗?

免费试用