我们有两个不同的Facebook帐户(我们自己和我们的客户)都有转换跟踪要求,但两个帐户的要求不同。
据我所知,如果发送的事件是通用的,我可以设置多个像素ID:
fbq('init', 'xxxxxxxxxxxxx1');
fbq('addPixelId', 'xxxxxxxxxxxxx2');
fbq('track', 'PageView');
但是,我想将不同的事件发送到不同的帐户。使用fbq push方法,似乎没有参数来指定帐户ID。
例如,我们希望将“添加到购物车”按钮跟踪为“添加到购物车”事件,但我们的客户希望将其作为潜在客户进行跟踪:
<script>
fbq('track', 'AddToCart');
</script>
<script>
fbq('track', 'Lead');
</script>
执行上述示例时,两个事件都会发送到两个帐户。我想要的是以下内容,其中帐户是明确的:
<script>
fbq('track', 'AddToCart', {'id':'xxxxxxxxxxxxx1'});
</script>
<script>
fbq('track', 'Lead', {'id':'xxxxxxxxxxxxx2'});
</script>
在像素本身中有一个ID查询参数,但我还没有找到如何在推送中设置它。有没有办法在推动新Facebook事件的过程中设置像素ID?
**更新**
我们尝试在每个'track'之前运行'init'来覆盖之前的跟踪器,但是这仍然会将所有事件发送到网站上的所有facebook标签。
答案 0 :(得分:1)
使用init
是正确的想法,但从现在以错误的方式。您应该只需fbq('init', 'xxxxxxxxxxxxx1');
fbq('init', 'xxxxxxxxxxxxx2');
fbq('init', 'xxxxxxxxxxxxx3');
fbq('track', 'PageView');
添加所有pixelIds,而不是尝试替换前一个像素。
addPixelId
Facebook正试图弃用var pixelA = Object.assign({}, fbq),
pixelB = Object.assign({}, fbq),
pixelC = Object.assign({}, fbq);
pixelA('init', 'xxxxxxxxxxxxx1');
pixelB('init', 'xxxxxxxxxxxxx2');
pixelC('init', 'xxxxxxxxxxxxx3');
pixelA('track', 'PageView');
。我找到了解决方案here
如果要在它们之间进行区分,请尝试克隆fbq对象并使用它们instedt。但我不确定这是否真的有效,因为内部。
{{1}}
答案 1 :(得分:0)
Facebook现在支持trackSingle
event。