多个 Facebook 像素,像素助手中的错误

Multiple Facebook Pixels, errors in pixel helper

在使用新像素事件跟踪转化时,我需要使用我们自己的像素以及我们客户的像素:fbq('track', 'Purchase', {value: '0.00', currency : 'SEK'});

根据 pixel-helper 加载像素事件。但是同样的像素给出了错误:"Facebook Pixel did not load"

我可以忽略这些错误吗,因为像素事件似乎已经加载过一次。我附上了一张显示像素助手消息的图片。

这是我从 pixel-helper 收到的消息: Pixel Helper Messages

这是我在致谢页面的 head-tag 中使用的代码:

<!-- Facebook 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','//connect.facebook.net/en_US/fbevents.js');

fbq('init', 'Pixel_ID_1');
fbq('track', "PageView");
fbq('track', 'Purchase', {value: '{{ subtotal_price | money_without_currency }}',currency: '{{ shop.currency }}'});

</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=Pixel_ID_1&ev=PageView&noscript=1"
/></noscript>
<!-- End Facebook Pixel Code -->


<!-- Facebook 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', 'Pixel_ID_2');
fbq('track', 'Purchase', {value: '{{ subtotal_price | money_without_currency }}',currency: '{{ shop.currency }}'});</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=Pixel_ID_2&ev=PageView&noscript=1"
/></noscript>
<!-- End Facebook Pixel Code —>

fbq('init', '9876543210'); 之后初始化第二个调用 fbq('addPixelId', '0123456789'); 的像素对我有用。

所以在代码中包含两个像素的正确方法是这样的:

<!-- Facebook 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','//connect.facebook.net/en_US/fbevents.js');

fbq('init', 'Pixel_ID_1');
fbq('addPixelId', 'Pixel_ID_2');
fbq('track', "PageView");
fbq('track', 'Purchase', {value: '{{ subtotal_price | money_without_currency }}',currency: '{{ shop.currency }}'});

</script>
<noscript>
<img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=Pixel_ID_1&ev=PageView&noscript=1"
/>
<img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=Pixel_ID_2&ev=PageView&noscript=1"
/>

Checkout this question and answer as well

其实我在这里发现了问题:

fbq('track', "PageView");

我对双引号下的 PageView 也有同样的问题。它实际上应该只是简单的“现在”。这将解决问题。