官方 Facebook Pixel WordPress Woocommerce 插件不同步产品

Official Facebook Pixel WordPress Woocommerce plugin not syncing products

一直在尝试在 https://www.facebook.com/business/help/900699293402826 获取官方 Facebook WP 插件,以将我们的 WooCommerce 产品作为商店上传到 FaceBook,这样 Pixel 就可以进行追踪,但遇到了困难。

当我们 运行 导出(在 Woocommerce > 设置下的 WP 插件中)去 Facebook 时,我们的 32 种产品中只有 3 种在 FB 商店中显示,并且它们的 Facebook Pixel 事件正常工作。

在 WordPress 端出现一条错误消息 "Facebook extension error: (#100) The parameter variants[1][options] is required"

这太模糊了,完全没用。我不知道为什么只有 3 个产品被同步而没有更多,当它们除了内容之外都是相同的。 有什么建议么?

找出问题所在。

问题是 Facebook WC 插件会根据是否存在任何变体选项将产品视为 'simple' 或 'variant'。

这很好,但是当它把产品视为 'variant' 时,它会将所有属性视为变体属性。这并不总是正确的,因为您可以拥有只是属性而不用作变体的属性。

这导致问题的原因是插件然后试图告诉 FB 这个不是变体的属性是一个变体,所以它在不应该的时候传递了一个 NULL 数组。

有问题的文件是第 866 行的 facebook-for-woocommerce/facebook-commerce.php。将其更改为:

'options' => $option_values == null ? array() : $option_values;

如果它没有值,将发送一个空数组,而不是 NULL。

这会导致产品正确同步。

我希望不必破解这个插件,但当他们没有正确编写东西时就会发生这种情况。希望这可以帮助其他人尝试解决此问题。