【问题标题】:How would I put multiple unique Facebook tracking pixels (events) on one page?如何将多个独特的 Facebook 跟踪像素(事件)放在一个页面上?
【发布时间】:2016-10-31 02:58:19
【问题描述】:

我们有两个不同的 Facebook 帐户(我们自己和我们的客户)都具有转化跟踪要求,但两个帐户的要求不同。

我了解,如果发送的事件是通用的,我可以设置多个像素 ID:

fbq('init', 'xxxxxxxxxxxxx1');
fbq('addPixelId', 'xxxxxxxxxxxxx2');
fbq('track', 'PageView');

但是,我想将不同的事件发送到不同的帐户。使用 fbq 推送方法,似乎没有指定帐户 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 标签。

【问题讨论】:

    标签: javascript html facebook google-tag-manager


    【解决方案1】:

    使用init 是正确的想法,但现在以错误的方式使用。与其尝试替换之前的那个,不如通过init 添加所有的pixelIds。

    fbq('init', 'xxxxxxxxxxxxx1');
    fbq('init', 'xxxxxxxxxxxxx2');
    fbq('init', 'xxxxxxxxxxxxx3');
    fbq('track', 'PageView');
    

    Facebook 正试图弃用 addPixelId。我找到了解决方案here

    如果您想区分它们,请尝试克隆 fbq 对象并使用它们 instedt。但由于内部原因,我不确定这是否真的有效。

    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');
    

    【讨论】:

    • 请注意,我正在尝试将不同的事件发送到不同的像素。因此,这种方法只允许我将相同的事件发送到不同的像素,这不是我想要实现的。
    【解决方案2】:

    Facebook 现在通过 trackSingle event 支持此功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-31
      • 2019-12-14
      相关资源
      最近更新 更多