Php Facebook SDK状态/页面

Php Facebook SDK状态/页面,php,facebook-graph-api,facebook-php-sdk,Php,Facebook Graph Api,Facebook Php Sdk,你好,我创建了一个直接发布的API,它在我的facebook个人资料上运行得非常好,状态正常。当我尝试在我的页面中发布状态时,帖子会进入访问者的出版物中。我该怎么做 我查看了Facebook Graph API,似乎这是一个bug。。您可以使用Curl绕过它 ps/I编辑了信息页面id、应用id、机密应用 提前谢谢你的帮助 圣菲尼 public function statutPage(){ $fb = new Facebook([ 'app_id' => 'my

你好,我创建了一个直接发布的API,它在我的facebook个人资料上运行得非常好,状态正常。当我尝试在我的页面中发布状态时,帖子会进入访问者的出版物中。我该怎么做

我查看了Facebook Graph API,似乎这是一个bug。。您可以使用Curl绕过它

ps/I编辑了信息页面id、应用id、机密应用

提前谢谢你的帮助 圣菲尼

public function statutPage(){

    $fb = new Facebook([
        'app_id' => 'my app id',
        'app_secret' => 'my app secret',
        'default_graph_version' => 'v2.8',

    ]);

    $pageID='my page id,;
    $token='A_VALID_USER_ACCESS_TOKEN';

    $attachment = [
        'access_token' => $token,
        'message' => 'Premier message auto',
        'name' => 'Première publication sur facebook',
        'caption' => 'Legend sous le tire',
        'link' => 'https://www.la-programmation.surleweb-france.fr',
        'description' => 'Description du lien',
        'picture' => 'https://www.google.fr/images/srpr/logo11w.png'
    ];


    try {
        $response = $fb->post('/'.$pageID.'/feed/', $attachment);

    } catch(FacebookAuthorizationException $e) {
        echo 'Graph retourne une erreur: ' . $e->getMessage();
        exit;
    } catch(FacebookSDKException $e) {
        echo 'Facebook SDK retourne une erreur: ' . $e->getMessage();
        exit;
    }

    $graphNode = $response->getGraphNode();

    echo 'Posté su Facebook avec l\'id: ' . $graphNode['id'];

}

注意下面的外观代码仅适用于“用户配置文件”,不适用于“页面”。如果您想了解如何处理页面的信息,请查看在中给出的答案


但是说到这里,为了发布到Graph API 5.0上的提要,我看到他们使用了
FacebookRequest
对象,然后在其上执行
execute
方法。但是,它返回一个
GraphObject
——似乎是

他们还提到要确保对您登录的帐户拥有“自动发布”的
publish\u actions
权限

为Graph API 5.0引用PHP SDK代码(在url中向下滚动至“publishing”)-请注意,它返回一个
GraphObject
-似乎是-I编辑了要使用的示例,如中所述


或者,他们还提到通过链接直接使用图形api

请编辑您的问题,提供一些
代码示例
,并提供您想要实现的场景。还可以查看Facebook Graph API文档本身。可能有必要提供其他参数来实现您希望的效果。事实上,您没有足够仔细地阅读文档。谢谢你的回复,我读了又读了文档,但这在页面上不起作用。。。在个人资料上没问题!目前我还没有找到在页面上发布状态的解决方案…*Class GraphObject*包Facebook**5.0.0 GraphObject已被重命名为GraphNodeSadly,这在当时看来是一个错误/沟通错误,确实是@StéphanieCaumont,请尝试在
$response
中使用
getGraphNode
方法,如中所示和记录的-我编辑了答案。这就是我在方法中使用的方法,不幸的是,它在配置文件状态下有效,但在页面上无效。。。我会试着看看谢谢:)@StéphanieCaumont我明白了,也许试着看看这个答案
/* PHP SDK v5.0.0 */
/* make the API call */
$request = new FacebookRequest(
  $session,
  'POST',
  '/me/feed',
  array (
    'message' => 'This is a test message',
  )
);
$response = $request->execute();
$graphNode = $response->getGraphNode();
/* handle the result */