【问题标题】:How to fix Duplicate Facebook pixel ID error?如何修复重复的 Facebook 像素 ID 错误?
【发布时间】:2016-07-18 17:18:45
【问题描述】:

像他们在这里展示的那样添加了 facebook 像素 here 现在出现错误:

fbevents.js:9 Facebook Pixel Error: Duplicate Pixel ID: some-pixel-id

无法理解导致此错误的原因。即使我从他们的示例中运行代码,并在控制台中从 html 中删除像素代码,我也会得到相同的结果。

有谁知道这意味着什么以及如何解决这个错误?

【问题讨论】:

  • 我遇到了同样的问题。我的改变是添加 Google Tag Manager 和 Facebook Pixel。两者都启动导致此错误。删除了 Facebook Pixel(单个)并将我添加到 Google Tag manager 中的那个留下。
  • 可以下载“Facebook Pixel Helper”帮助调试:marketlytics.com/analytics-faq/…

标签: javascript facebook-ads-api facebook-pixel


【解决方案1】:

我实际上在this 页面上找到了解决方案。

这是因为每次发送事件时,代码都会被初始化 具有相同的像素 ID。实际上初始化应该只发生 一次。”

此修复有效。您可以使用 Facebook Pixel Helper 作为 Chrome 中的扩展来验证这一点。

if(typeof fbq === 'undefined') {
    !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', '123123123213121');
    fbq('track', 'PageView');
    fbq('track', '{{fBPixelType}}');
  }
  else {
    fbq('track', '{{fBPixelType}}');
  }

【讨论】:

    【解决方案2】:

    此错误通常意味着fbq('init', <pixel_id>) 被多次调用且具有相同的像素 ID。

    【讨论】:

    • 有趣的方法。正如我之前所说,我尝试从不包含该代码的页面上的控制台运行代码(页面上根本没有 facebook 像素)。得到了同样的结果。我没有复制任何东西。 Facebook 像素助手说像素加载正常,但错误不断提醒。是的,我 100% 确定页面上没有 fbq('init', <pixel_id>) 重复项。但是感谢您的努力。
    • 也遇到了这个问题,没什么好说的了。
    【解决方案3】:

    在 Google 论坛中找到的另一个答案: “您必须检查您的 Facebook Pixel 代码是否每页仅初始化一次(而不是每个事件)。转到您的 FB Pixel 代码所在的标签并打开高级设置。标签触发选项 -> 每页一次(不是事件!)。”

    【讨论】:

      【解决方案4】:

      我遇到了同样的问题,将 GTM 上的 facebook 像素初始化标签更改为“每页一次”就可以了。

      我知道有人已经回答了这个问题,但是由于提供的解决方案不止一个,而且“选定”的答案对我来说似乎比这个答案更复杂,我想我会在这里发表评论,以便其他有同样问题的人感到有信心尝试这种更简单的方法。

      【讨论】:

        【解决方案5】:

        仅当您尝试多次初始化像素 ID 时才会出现此错误,因此您需要检查您网站上加载的所有 JavaScript 代码并找出对您的像素 ​​ID 的多次调用 init 的来源.

        要检查的关键区域是右键单击您的站点,然后单击“查看页面源代码”。然后检查所有引用的 JavaScript 文件和您引用的任何 GTM 容器。我听说开发人员在网站的<head> 和 GTM 容器中都包含 Facebook 像素代码,这会导致此错误。

        如果您在查找两个 init 调用时遇到问题,在网站上查找特定 JavaScript 代码的最简单方法之一是使用 Chrome 开发人员工具。按F12打开工具,按Ctrl+Shift+F打开搜索面板,然后输入@ 987654324@ 或您要查找的任何内容。它将遍历它为该站点加载的源并查找该代码。

        【讨论】:

          【解决方案6】:

          您应该在调用init 之前检查fbq 是否未定义。

          if (typeof fbq === 'undefined') {
              fbq('init', 'your-pixel-ID');
          }
          

          请注意:不要用 if 语句包装完整的脚本!

          【讨论】:

            【解决方案7】:

            在研究破解任何代码之前,有必要检查一下新的trackSingle 调用:

            fbq('trackSingle', 'pixel-id1', 'PageView');
            fbq('trackSingle', 'pixel-id2', 'Purchase');
            

            它允许在一个脚本中使用多个具有不同范围的fbq 函数(“PageView”、“Purchase”),如果两个像素的范围相同(例如“PageView”),那么您可能只需像这样使用调用:

            fbq('init', 'pixel-id1');
            fbq('init', 'pixel-id2');
            fbq('track', 'PageView');
            

            【讨论】:

              【解决方案8】:

              我在我的 shopify 商店中遇到了同样的问题,但我研究并发现 Trackify fb 像素应用程序是我的选择。我删除了我过去(正在试验)创建的所有以前的像素和事件,并安装了有助于创建多个事件和像素的应用

              【讨论】:

                猜你喜欢
                • 2011-11-18
                • 2019-08-11
                • 1970-01-01
                • 2018-09-09
                • 2021-07-19
                • 1970-01-01
                • 2021-10-12
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多