使用基于iframe的旧版Checkout集成时,使用Meta(Facebook)像素跟踪整个结账漏斗。
使用旧版Checkout集成(在iglobalstores.com上托管的iframe)的商家可以跟踪整个结账漏斗中的Meta像素事件。Zonos Checkout自动从iframe中继推送分析事件到父页面,使用与Google Analytics 4相同的轻量级中继脚本,因此事件在您的Meta事件管理器中显示为来自您自己网站的事件。
iglobalstores.com
对于每个漏斗步骤,会发送两个事件:
zonos-checkout-...
fbq('trackCustom', ...)
fbq('track', ...)
InitiateCheckout
AddPaymentInfo
Purchase
原生集成不需要本指南。 如果<zonos-checkout>直接在您的网站上呈现(没有iframe),Zonos将调用您页面的window.fbq — 只需在Zonos仪表板的Checkout设置 → 跟踪下启用Facebook像素,并确保您通常的Meta像素基本代码已加载到页面上。下面的中继设置仅在Checkout托管在不同来源的iframe中时才需要。
<zonos-checkout>
window.fbq
由于Zonos Checkout在不同来源的iframe内运行,它无法直接访问您页面的fbq函数。中继系统通过两步握手(步骤1-2)解决这个问题,然后进行事件转发(步骤3):
fbq
postMessage
track
trackCustom
所有消息都仅通过HTTPS针对受信任的Zonos来源(zonos.com和iglobalstores.com)进行验证。
zonos.com
如果您还没有在您的网站上安装Meta像素,请将标准像素基本代码添加到托管Checkout iframe的页面的<head>中。将YOUR_PIXEL_ID替换为您自己的数字像素ID。
<head>
YOUR_PIXEL_ID
<!-- Meta Pixel Code -->
<script>
!(function (f, b, e, v, n, t, s) {
if (f.fbq) return;
n = f.fbq = function () {
n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments);
};
if (!f._fbq) f._fbq = n;
n.push = n;
n.loaded = !0;
n.version = '2.0';
n.queue = [];
t = b.createElement(e);
t.async = !0;
t.src = v;
s = b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t, s);
})(
window,
document,
'script',
'https://connect.facebook.net/en_US/fbevents.js',
);
fbq('init', 'YOUR_PIXEL_ID');
fbq('track', 'PageView');
</script>
注意: 如果您的网站已经安装了Meta像素(例如,通过Google标签管理器、Shopify的原生集成或直接代码片段),您可以跳过此步骤。中继脚本将使用您现有的fbq函数。
您可以在Meta事件管理器中您的像素的设置 -> 继续像素设置 -> 手动安装代码下找到此代码片段。
通过在Checkout的customHTML内设置window.Zonos.facebookPixelId来告诉Zonos Checkout使用哪个像素ID。Zonos仪表板在Checkout设置下公开customHTML编辑器 — 添加一个这样的<script>标签:
customHTML
window.Zonos.facebookPixelId
window.Zonos.facebookPixelId = 'YOUR_PIXEL_ID';
此值在中继握手期间发送到父级。如果您的父页面还没有加载fbq,中继脚本将使用您提供的此ID为您注入Meta像素基本代码。
将以下脚本标签添加到加载Checkout iframe的同一页面,在Meta像素基本代码之后。这是与Google Analytics 4相同的脚本 — 单个中继处理两个提供商,所以如果您已经为GA4添加了它,请跳过此步骤。
<script
async
src="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js"
></script>
以下是您的页面<head>中完整设置的样子:
<!-- ... your existing head tags ... -->
n.callMethod
? n.callMethod.apply(n, arguments)
: n.queue.push(arguments);
<!-- Zonos analytics relay for iframe checkout -->
</head>
就这样。一旦您的页面上有两个脚本,您的Zonos仪表板中启用了Facebook像素,并且customHTML设置了像素ID,中继将自动将所有结账漏斗事件转发给Meta。
对于漏斗中的每一步,Zonos Checkout会触发一个自定义事件(以便您可以构建精确的受众)和匹配的Meta标准事件(以便它显示在Meta的优化和转换报告中)。所有事件都包括一个isTestMode标志和checkoutSessionId。
isTestMode
checkoutSessionId
zonos-checkout-start
zonos-checkout-customer-info
zonos-checkout-shipping-info
serviceLevelId
zonos-checkout-payment-info
paymentMethod
zonos-checkout-payment-fail
zonos-checkout-success
order_id
currency
value
contents
content_ids
purchase
zonos-checkout-close
没有Meta标准等效项的步骤(例如客户信息、运送信息)仅触发自定义zonos-checkout-...事件。您可以通过在Meta广告管理器中使用"Event = zonos-checkout-customer-info"等方式在自定义受众中定位这些步骤。
Purchase标准事件遵循Meta像素Purchase事件架构。购物车项目从GA样式的items数组映射到Meta的contents数组:
items
USD
id
quantity
item_price
content_type
"product"
num_items
要为中继脚本启用调试日志记录,请将zonosDebug=1查询参数添加到您的页面URL:
zonosDebug=1
https://www.yourstore.com/checkout?zonosDebug=1
打开您的浏览器开发者控制台,查看中继握手和转发事件的详细日志。这对于验证以下内容很有用:
Meta像素助手Chrome扩展也有助于实时检查像素调用。
Meta的标准事件默认即可支持转换优化、广告报告和类似受众定向。自定义zonos-checkout-...事件让您构建更精细的自定义受众,针对确切的漏斗步骤,即使没有Meta标准等效项(例如客户信息、运送信息)。同时触发这两个事件可以让您两全其美,而不会失去任何信号。
您不需要两个中继脚本 — 同一个analyticsRelayOnInit.js在单个握手中处理两个提供商。将GA4基本标签和Meta像素基本代码添加到您的<head>中,在customHTML中同时设置window.Zonos.googleAnalyticId和window.Zonos.facebookPixelId,并在您的Zonos仪表板中启用两个提供商。每个事件都会发送给启用的任何提供商。
analyticsRelayOnInit.js
window.Zonos.googleAnalyticId
如果您的customHTML设置了window.Zonos.facebookPixelId,并且中继脚本在页面上检测不到fbq,它将使用您提供的像素ID在握手期间为您注入Meta像素基本代码。您也可以自己预安装Meta像素基本代码,如果您想在结账漏斗之外触发PageView和其他事件。
PageView
所有事件都包括一个isTestMode字段。当Checkout处于测试模式时,事件仍会中继到Meta,但标记为isTestMode: true。您可以在Meta广告管理器中过滤这些,或使用自定义转换规则排除它们。
isTestMode: true
不——这是在您购物者浏览器中运行的浏览器端像素集成。Meta Conversions API是一个单独的服务器到服务器通道,一些商家将其与像素一起使用以提高冗余性。两者是互补的,Zonos的中继仅处理浏览器端像素。
Facebook像素
iframe结账的Facebook像素
使用基于iframe的旧版Checkout集成时,使用Meta(Facebook)像素跟踪整个结账漏斗。
使用旧版Checkout集成(在
iglobalstores.com上托管的iframe)的商家可以跟踪整个结账漏斗中的Meta像素事件。Zonos Checkout自动从iframe中继推送分析事件到父页面,使用与Google Analytics 4相同的轻量级中继脚本,因此事件在您的Meta事件管理器中显示为来自您自己网站的事件。对于每个漏斗步骤,会发送两个事件:
zonos-checkout-...的自定义事件(通过fbq('trackCustom', ...)),用于完整漏斗自定义受众。fbq('track', ...)),用于内置优化,例如InitiateCheckout、AddPaymentInfo和Purchase。工作原理
由于Zonos Checkout在不同来源的iframe内运行,它无法直接访问您页面的
fbq函数。中继系统通过两步握手(步骤1-2)解决这个问题,然后进行事件转发(步骤3):postMessage发送到您的页面,其中中继脚本将其转发给fbq,使用适当的track/trackCustom模式。所有消息都仅通过HTTPS针对受信任的Zonos来源(
zonos.com和iglobalstores.com)进行验证。先决条件
设置
步骤1:将Meta像素基本代码添加到您的页面
如果您还没有在您的网站上安装Meta像素,请将标准像素基本代码添加到托管Checkout iframe的页面的
<head>中。将YOUR_PIXEL_ID替换为您自己的数字像素ID。<!-- Meta Pixel Code --><script>!(function (f, b, e, v, n, t, s) {if (f.fbq) return;n = f.fbq = function () {n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments);};if (!f._fbq) f._fbq = n;n.push = n;n.loaded = !0;n.version = '2.0';n.queue = [];t = b.createElement(e);t.async = !0;t.src = v;s = b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t, s);})(window,document,'script','https://connect.facebook.net/en_US/fbevents.js',);fbq('init', 'YOUR_PIXEL_ID');fbq('track', 'PageView');</script>您可以在Meta事件管理器中您的像素的设置 -> 继续像素设置 -> 手动安装代码下找到此代码片段。
步骤2:将您的像素ID传递给Zonos Checkout
通过在Checkout的
customHTML内设置window.Zonos.facebookPixelId来告诉Zonos Checkout使用哪个像素ID。Zonos仪表板在Checkout设置下公开customHTML编辑器 — 添加一个这样的<script>标签:<script>window.Zonos.facebookPixelId = 'YOUR_PIXEL_ID';</script>此值在中继握手期间发送到父级。如果您的父页面还没有加载
fbq,中继脚本将使用您提供的此ID为您注入Meta像素基本代码。步骤3:添加Zonos分析中继脚本
将以下脚本标签添加到加载Checkout iframe的同一页面,在Meta像素基本代码之后。这是与Google Analytics 4相同的脚本 — 单个中继处理两个提供商,所以如果您已经为GA4添加了它,请跳过此步骤。
<scriptasyncsrc="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js"></script>完整示例
以下是您的页面
<head>中完整设置的样子:<head><!-- ... your existing head tags ... --><!-- Meta Pixel Code --><script>!(function (f, b, e, v, n, t, s) {if (f.fbq) return;n = f.fbq = function () {n.callMethod? n.callMethod.apply(n, arguments): n.queue.push(arguments);};if (!f._fbq) f._fbq = n;n.push = n;n.loaded = !0;n.version = '2.0';n.queue = [];t = b.createElement(e);t.async = !0;t.src = v;s = b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t, s);})(window,document,'script','https://connect.facebook.net/en_US/fbevents.js',);fbq('init', 'YOUR_PIXEL_ID');fbq('track', 'PageView');</script><!-- Zonos analytics relay for iframe checkout --><scriptasyncsrc="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js"></script></head>就这样。一旦您的页面上有两个脚本,您的Zonos仪表板中启用了Facebook像素,并且
customHTML设置了像素ID,中继将自动将所有结账漏斗事件转发给Meta。Meta像素事件参考
对于漏斗中的每一步,Zonos Checkout会触发一个自定义事件(以便您可以构建精确的受众)和匹配的Meta标准事件(以便它显示在Meta的优化和转换报告中)。所有事件都包括一个
isTestMode标志和checkoutSessionId。fbq('trackCustom', ...))↕fbq('track', ...))↕zonos-checkout-startInitiateCheckoutzonos-checkout-customer-infozonos-checkout-shipping-infoserviceLevelIdzonos-checkout-payment-infoAddPaymentInfopaymentMethodzonos-checkout-payment-failzonos-checkout-successorder_id,currency,value,contents,content_idspurchasePurchaseorder_id,currency,value,contents,content_idszonos-checkout-closePurchase事件元数据
Purchase标准事件遵循Meta像素Purchase事件架构。购物车项目从GA样式的items数组映射到Meta的contents数组:valuecurrencyUSD)order_idcontentsid、quantity和item_pricecontent_idscontent_type"product"num_items调试
要为中继脚本启用调试日志记录,请将
zonosDebug=1查询参数添加到您的页面URL:https://www.yourstore.com/checkout?zonosDebug=1打开您的浏览器开发者控制台,查看中继握手和转发事件的详细日志。这对于验证以下内容很有用:
track/trackCustom模式转发给fbq。Meta像素助手Chrome扩展也有助于实时检查像素调用。
常见问题
为什么会为同一步骤触发两个事件(例如
zonos-checkout-start和InitiateCheckout)?Meta的标准事件默认即可支持转换优化、广告报告和类似受众定向。自定义
zonos-checkout-...事件让您构建更精细的自定义受众,针对确切的漏斗步骤,即使没有Meta标准等效项(例如客户信息、运送信息)。同时触发这两个事件可以让您两全其美,而不会失去任何信号。如果我同时运行Google Analytics和Facebook Pixel怎么办?
您不需要两个中继脚本 — 同一个
analyticsRelayOnInit.js在单个握手中处理两个提供商。将GA4基本标签和Meta像素基本代码添加到您的<head>中,在customHTML中同时设置window.Zonos.googleAnalyticId和window.Zonos.facebookPixelId,并在您的Zonos仪表板中启用两个提供商。每个事件都会发送给启用的任何提供商。如果我的父页面没有安装Meta像素怎么办?
如果您的
customHTML设置了window.Zonos.facebookPixelId,并且中继脚本在页面上检测不到fbq,它将使用您提供的像素ID在握手期间为您注入Meta像素基本代码。您也可以自己预安装Meta像素基本代码,如果您想在结账漏斗之外触发PageView和其他事件。是否跟踪测试订单?
所有事件都包括一个
isTestMode字段。当Checkout处于测试模式时,事件仍会中继到Meta,但标记为isTestMode: true。您可以在Meta广告管理器中过滤这些,或使用自定义转换规则排除它们。Conversions API(CAPI)是否替代这个?
不——这是在您购物者浏览器中运行的浏览器端像素集成。Meta Conversions API是一个单独的服务器到服务器通道,一些商家将其与像素一起使用以提高冗余性。两者是互补的,Zonos的中继仅处理浏览器端像素。
这个页面有帮助吗?