我有一个单页网站,其中包含联系表单index.html。
该页面包含以下再营销的facebook像素:
<!-- 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', '123456789');
fbq('track', "PageView");</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=123456789&ev=PageView&noscript=1"
/></noscript>
<!-- End Facebook Pixel Code -->
当用户提交表单,并且我从ajax获得响应时,我将外部html文件加载到我页面上的iframe(conv.html)。 外部html文件中包含转换代码:
<!-- 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', '123456789');
fbq('track', "PageView");
fbq('track', 'Lead');
</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=123456789&ev=PageView&noscript=1"
/></noscript>
<!-- End Facebook Pixel Code -->
基本相同,只有'Lead'跟踪事件。 你可以看到即时通讯在两个像素上使用'PageView',以便被提交表单的网址受众排除(我需要除了引导事件之外),事情是,当我加载第二个像素时,我得到一个错误,说像素被多次触发。
我不确定是否有任何问题,但我们还在第二个像素上应用规则,仅在包含'conv.html'(加载到我的iframe的网页)的网页网址上触发。
我一直在谷歌寻找解决方案,但无法找到任何东西。 我试图弄清楚这是否可能在一个页面的网站上。
任何想法?