Facebook个人资料帖子在网站上

时间:2014-01-30 08:25:17

标签: javascript facebook

寻找建议我如何实现这一目标。

我想在我的网站上显示FB个人资料页面(个人页面)(不是粉丝页面)。 我曾尝试使用徽章,但它并没有显示我墙上的所有帖子,我和我都不关心它的外观。 我尝试使用rss,但它显示fb通知,而不是状态更改或张贴的照片。

基本上我是在找到一种方法在我的网站上实现我的facebook状态帖子,而不仅限于最后一篇文章。

有什么想法吗?我找到了一些粉丝页面的方法,但没有找到个人资料页面。 网站是一个常规网站,而不是wordpress等。

1 个答案:

答案 0 :(得分:0)

首先,您需要保护access_token不被曝光,这需要PHP

我们将使用cURL获取Feed(您也可以使用Facebook-PHP-SDK):

<?php

    $user_access_token = '{access_token}'; // A valid user access token or app token
    $userName = '{userName}'; // Facebook username
    $limit = '25'; // Limit posts
    $jsonFeed = 'https://graph.facebook.com/'.$userName.'/posts?fields=id&limit='.$limit.'&access_token='.$user_access_token;

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $jsonFeed);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    $getPosts = curl_exec($ch);
    curl_close($ch);

    $data = json_decode($getPosts); // decode json

?>

<!-- Basic/required HTML tags, head, style etc.. -->
<!-- body -->

<div id="container">
<h1 class="title">My Timeline Feed</h1>
<?php

      foreach($data->data as $data){

                       $userid_postid = $data->id;
                       $postid = substr($userid_postid, strpos($userid_postid, "_") + 1); // remove the userid because we can't use {userId}_{postId}
                       print '<div class="post-warp"><div class="fb-post" data-href="https://www.facebook.com/'.$userName.'/posts/'.$postid.'"></div></div>';
      }  
?>
</div>
<div id="fb-root"></div>
<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";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<!-- / body -->
<!-- / Basic/required HTML tags -->

请记住,您需要延长access_token,否则您必须每2小时重新生成一次token,延长的access_token工作60天

资源: