Facebook评论框不工作,但以前工作过

时间:2012-04-21 04:04:03

标签: facebook facebook-javascript-sdk facebook-social-plugins

我试图在我的网站上实现一个简单的Facebook social plugin comment框。该框的URL不是静态的,因为我网站上的每个帖子都有其中一个,但是是使用PHP生成的。

我让它工作了一段时间,但突然它停止了这样做,现在我再也无法恢复。我对Facebook开发不太熟悉,所以我可能在代码中犯了错误。

以下是我加载Facebook的方法 Javascript SDK (我更改了一些匿名字段):

<div id='fb-root'></div>
<script>
window.fbAsyncInit = function() {
        FB.init({
          appId      : MY_ID,
          channelUrl : 'http://www.mysite.com/channel.php', 
          status     : true, // check login status
          cookie     : true, // enable cookies to allow the server to access the session
          xfbml      : true  // parse XFBML
        });

        // Additional initialization code here
      };

      // Load the SDK Asynchronously
      (function(d){
         var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
         if (d.getElementById(id)) {return;}
         js = d.createElement('script'); js.id = id; js.async = true;

         js.src = '//connect.facebook.net/en_US/all.js';
         ref.parentNode.insertBefore(js, ref);
       }(document));
</script>

以下是我如何初始化评论框

<script>
    (function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) return;
          js = d.createElement(s); js.id = id;
          js.src = '//connect.facebook.net/en_US/all.js#xfbml=1&appId=MY_ID';
          fjs.parentNode.insertBefore(js, fjs);
        }(document, 'script', 'facebook-jssdk'));
</script>

<div class='fb-comments' data-href='http://mysite.com/post?id=<?php echo $id; ?>' data-num-posts='4' data-width='470'></div>

这是 channel.php:

<?php
header("Pragma: public");
$cache_expire = 60*60*24*365;
header("Cache-Control: max-age=".$cache_expire);
header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$cache_expire) . ' GMT');
?>
<!DOCTYPE html>
<script src="//connect.facebook.net/en_US/all.js"></script>

我将脚本粘贴在正文页面的末尾。现在,没有任何东西出现 - 没有错误,只是空白。任何有关让它工作的帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

对不起,伙计们,但整件事是由我的一个愚蠢的错误引起的:我有一个阻止评论框的Firefox插件。它实际上工作正常。我为自己的错误道歉。