Facebook PHP SDK v4 - 发布到页面Feed没有正确显示

时间:2014-12-03 17:05:55

标签: php facebook facebook-graph-api facebook-php-sdk

我有一个已获批准获得以下权限的Facebook应用: ' publish_actions',' manage_pages',' public_profile' 该应用程序可以工作,因为它要求登录,创建令牌,并发布到页面没有错误 - 但是,尽管登录用户也是其发布的页面的管理员,但默认情况下隐藏帖子,你必须通过facebook中的活动日志页面将它们显示出来。

完成后,他们只能在左侧看到'帖子'框,而不是主页面提要,然后不是每个人。

我想要的是让帖子直接进入页面的主要供稿,并且每个人都可以看到。对此有任何帮助表示赞赏。

我使用以下参数发布:

$params =  array(   
        'access_token'  => $access_token,
        'name'          => $articles_name,
        'link'          => $articles_url,
        'description'   => (strlen($message)>255) ? substr($message,0,250).'...' : $message,
        'message'       => $articles_url,
        'caption'       => $articles_name,
        'picture'       => (strlen($articles_image_url)) ? $articles_image_url : '',
        'published'     => true,
        'actions' => array(
                            'name'=> $articles_name,
                            'link'=> $articles_url
                   ),
        );

然后(成功)提交如下:

$post = (new FacebookRequest($session, 'POST', '/'.$page_id.'/feed', $params))->execute()->getGraphObject()->asArray();

1 个答案:

答案 0 :(得分:0)

正如WizKid指出的那样 - 我没有使用页面令牌 - 只是页面管理员的令牌。 只需执行以下操作即可解决问题:

$page_access_token = (new FacebookRequest( $session, 'GET', '/'.$page_id, array( 'fields' => 'access_token' ) ))->execute()->getGraphObject()->asArray();
$params['access_token'] = $page_access_token['access_token'];