3

게시자가 Facebook.com에 올린 것과 동일한 세부 사항으로 관리자 사용자의 페이지 타임 라인에 상태를 게시하는 기능을 앱에 추가하려고합니다. 초점을 맞추고있는 주요 기능은 링크 공유 및 미리보기 이미지입니다. 예를 들어 링크를 상태에 붙여 넣으면 미리보기 이미지가 자동으로 감지되어 멋진 링크, 설명 등을 얻을 수 있습니다. 다른 포럼을 통해 지치지 않습니다. 및 그래프 API 문서, 그리고 페이지 대신 관리자 사용자로 게재 게시물에 문제가 계속 실행됩니다. 여기 내 코드입니다 :Facebook PHP SDK 그래프 API 게시가 제대로 작동하지 않습니다.

$facebook = new Facebook(array(
    'appId' => $appID, 
    'secret' => $appSecret, 
)); 

$loginUrl = $facebook->getLoginUrl(array(
    "scope" => 'publish_stream, read_insights, manage_pages, photo_upload, video_upload, create_note, manage_notifications' 
)); 

$access_token = $facebook->getAccessToken(); 

$fbpost = array(); 

$fbpost['access_token'] = $access_token; 
$fbpost['message']  = $message; 
$fbpost['link']   = $link; 
$fbpost['description'] = $description; 
$fbpost['caption']  = $caption; 
$fbpost['picture']  = $fbimg; 

$status = $facebook->api('/'.$pageID.'/feed', 'POST', $fbpost); 
var_dump($status); 

난 단지 $의 fbpost [ '메시지'] 제대로 페이지와 상태를 게시,하지만 다른 작업을 추가 할 때 대신의 인증 된 관리자로 게시물을 표시를 게시 할 때 그 페이지. 매우 실망합니다. 어떤 아이디어?

+0

또한 admin 사용자로 게시하면 링크 , 사진 등 첨부 파일을 누른 다음 응용 프로그램을 통해 인증을해야합니다. 그것은 실제로 상태 타임 라인에 게시하는 것과는 다릅니다. – iDsteven

답변

4

페이지가 아닌 관리 사용자로 표시되는 게시물에 문제가 계속 발생합니다.

는 그런 다음 link to the Facebook docs on the page/app access token를 제공하기 위해 ... CBroe에

+0

감사합니다. CBroe 님, 처음 보았을 때이 페이지에 필요한 추가 access_token을 알지 못했습니다 (너무 많은 Facebook 문서가 있습니다!). PHP에서이 문제를 처리하는 방법에 대한 좋은 문서가 없으므로 답변도 게시 할 것입니다. 다시 한 번 감사드립니다! – iDsteven

3

감사를 page access token 아닌 관리 사용자에 대한 사용자 액세스 토큰을 얻는다. 그걸 확인한 후에, 나는이 PHP를 만들었다. (페이지 접근 토큰을 얻기위한 PHP SDK에는 좋은 문서가 없기 때문에).

$user_token  = $facebook->getAccessToken(); 
$accounts  = $facebook->api('/me/accounts?access_token='.$user_token); 
$account_token = 0; 
foreach ($accounts['data'] as $account) { 
    if ($account['id'] == $_SESSION['facebook']) { 
     $account_token = $account['access_token']; 
    } 
} 

if ($account_token) { 
    /// your page token code 
} else { 
    echo 'You must be an admin on this page!'; 
}