Facebook评论插件返回错误"对象无效值"

时间:2016-07-09 07:42:13

标签: php facebook facebook-comments

我在我的网站上整合了facebook评论插件。如果在任何页面中,Facebook评论仅为' 0'然后它将在弹出窗口中返回错误 错误:Object Invalid Value

有时会返回 错误Object Missing a Required Value

enter image description here

3 个答案:

答案 0 :(得分:2)

回到Facebook开发者。有一个新版本的JavaScript SDK ......你现在可能正在2.7使用2.6。只需点击"获取代码"再次确保您网站上的SDK与开发人员在Facebook上弹出的SDK相匹配。我昨晚为自己解决了这个问题。如果这不能解决您的问题,请告诉我,我目前正在撰写有关此问题的博客文章。

您的版本:   js.src =" // connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.6" ;;

新版本:   js.src =" // connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.7" ;;

答案 1 :(得分:1)

上述答案并没有解决我的问题。我没有得到"对象无效的价值"错误了。问题似乎是我在使用动态内容。我做的是:

  1. 将data-href属性中的url更改为包含facebook comment插件框的页面的完整url。不要包含任何查询字符串,例如。 ?产品= 1。只有页面网址。
  2. 将以下脚本代码添加到页面中:

    <script>
    $(".fb-comments").attr("data-href", window.location.href);
    </script>
    

    有效。见截图。

  3. enter image description here

答案 2 :(得分:0)

我遇到了同样的问题。它只解决了两件事就解决了。

  1. 在标题部分:

    <meta property="og:url" content="CURRENT PAGE URL"/>
    
  2. 在评论部分:

    <div class="fb-comments"
       data-href="CURRENT PAGE URL"
       data-numposts="10"
       data-width="100%">
    </div>
    

您可以使用javaScript(遵循上一个答案)或任何服务器端脚本来设置“当前页面URL”。 在PHP中会是这样。

<?php
      echo  (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : 
      "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
?>