PHP:使用FB API在Facebook页面上发布帖子仅对管理员可见


php: post on Facebook page using FB apis are visible only to admin

我正在尝试使用FB API发布到FB页面。帖子很好,但它只对管理员用户可见,而不是每个喜欢该页面的人。我尝试与EVERYONE和ALL_FRIENDS一起更改隐私设置,但没有多大帮助。下面是我的代码片段。

任何帮助都非常感谢。

//--------code snippet------------
require '../src/facebook.php';

$facebook = new Facebook(array(
            'appId'  => 'XXXXXXXXXXXX',
            'secret' => 'YYYYYYYYYYYYYYYYYYY',
            ));
// Get User ID
$user = $facebook->getUser();
if ($user) 
{
    try {
        $page_id = 'ZZZZZZZZZZZ';
        $page_info = $facebook->api("/$page_id?fields=access_token");
        if( !empty($page_info['access_token']) ) 
        {
            $args = array(
                'access_token'  => $page_info['access_token'],
                'message'       => "My Msgs!"
            );
            $post_id = $facebook->api("/$page_id/feed","post",$args);
        } 
        else 
        {
            $permissions = $facebook->api("/me/permissions");
            if( !array_key_exists('publish_stream', $permissions['data'][0]) || 
                !array_key_exists('manage_pages', $permissions['data'][0])) 
            {
                $loginUrl = $facebook->getLoginUrl(array("scope" => "publish_stream, manage_pages"));
                echo '<a href="'.$loginUrl.'">Login1 with FB</a>';
            }
        }
    } catch (FacebookApiException $e) 
{
    echo "error ", $e;
}
}
if ($user)
{
    $logoutUrl = $facebook->getLogoutUrl();
} else 
{
    $loginUrl = $facebook->getLoginUrl(array('scope'=>'manage_pages,publish_stream'));
    echo '<a href="'.$loginUrl.'">Login2 with FB</a>';
}

似乎您的应用程序已设置为开发模式,您需要在 https://developers.facebook.com 下将其切换到公共 -> 我的应用程序 -> 选择您的应用 ->状态和评论 -> 你想让这个应用程序及其所有功能向公众开放吗? ->切换到是