如何修复重复的Facebook像素ID错误?

时间:2016-03-30 15:29:36

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

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

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

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

任何人都知道这意味着什么以及如何解决这个错误?

8 个答案:

答案 0 :(得分:22)

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

https://productforums.google.com/d/msg/tag-manager/GIaDNascpYw/TNfoJApXBgAJ

不确定为什么会发生这种情况,但修复工作正常。您可以使用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}}');
  }

答案 1 :(得分:15)

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

答案 2 :(得分:2)

Google论坛中的另一个答案: &#34;您必须检查您的Facebook Pixel代码是否每页仅初始化一次(而非每个事件)。转到FB Pixel代码所在的标记,然后打开高级设置。标签触发选项 - &gt;每页一次(不是活动!)。&#34;

答案 3 :(得分:0)

只有在您尝试多次初始化像素ID时才会出现此错误,因此您需要检查网站上的所有JavaScript代码加载情况,并找到多次调用y = pd.Series(' '.join(df1['description']).lower().split()).value_counts()[:10] 像素ID的位置来自。

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

如果您在查找两个init来电时遇到问题,那么在网站上查找特定JavaScript代码的最简单方法之一就是使用Chrome开发者工具。按 F12 打开工具,按 Ctrl + Shift + F 打开搜索面板,然后键入{ {1}}或者你要找的任何东西。它将遍历为站点加载的源并查找该代码。

答案 4 :(得分:0)

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

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

答案 5 :(得分:0)

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

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

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

答案 6 :(得分:0)

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

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

它允许在一个脚本中使用多个具有不同范围('PageView'、'Purchase')的fbq函数,如果两个像素的范围相同(例如'PageView'),则你可以像这样使用调用:

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

答案 7 :(得分:-1)

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