php – 在Facebook墙上发布,而不是用户

前端之家收集整理的这篇文章主要介绍了php – 在Facebook墙上发布,而不是用户前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以在Facebook墙上发布应用程序,而不是作为用户?据我所知,一个应用程序不是Facebook的有效用户,但有许多关于发布为页面而不是用户或应用程序的评论.

如何使用PHP Facebook API?

您需要publish_stream,manage_pages权限.代码如下:
  1. <?PHP
  2. // This code is just a snippet of the example.PHP script
  3. // from the PHP-SDK <https://github.com/facebook/facebook-PHP-sdk/blob/master/examples/example.PHP>
  4. require '../src/facebook.PHP';
  5.  
  6. // Create our Application instance (replace this with your appId and secret).
  7. $facebook = new Facebook(array(
  8. 'appId' => 'app_id','secret' => 'app_secret',));
  9.  
  10. // Get User ID
  11. $user = $facebook->getUser();
  12.  
  13. if ($user) {
  14. try {
  15. $page_id = 'page_id';
  16. $page_info = $facebook->api("/$page_id?fields=access_token");
  17. if( !empty($page_info['access_token']) ) {
  18. $args = array(
  19. 'access_token' => $page_info['access_token'],'message' => "I'm a Page!"
  20. );
  21. $post_id = $facebook->api("/$page_id/Feed","post",$args);
  22. } else {
  23. $permissions = $facebook->api("/me/permissions");
  24. if( !array_key_exists('publish_stream',$permissions['data'][0]) ||
  25. !array_key_exists('manage_pages',$permissions['data'][0])) {
  26. // We don't have one of the permissions
  27. // Alert the admin or ask for the permission!
  28. header( "Location: " . $facebook->getLoginUrl(array("scope" => "publish_stream,manage_pages")) );
  29. }
  30.  
  31. }
  32. } catch (FacebookApiException $e) {
  33. error_log($e);
  34. $user = null;
  35. }
  36. }
  37.  
  38. // Login or logout url will be needed depending on current user state.
  39. if ($user) {
  40. $logoutUrl = $facebook->getlogoutUrl();
  41. } else {
  42. $loginUrl = $facebook->getLoginUrl(array('scope'=>'manage_pages,publish_stream'));
  43. }
  44.  
  45. // ... rest of your code
  46. ?>

我写了和深入的教程:How To: Post On Facebook Page As Page Not As Admin User Using PHP-SDK

猜你在找的PHP相关文章