Facebook ページ ( ) の管理者の 1 人にアプリ ( ) を承認してもらうことができます$pageId
。$fbAppId
<script>
var oauth_url = 'https://www.facebook.com/dialog/oauth/';
oauth_url += '?client_id=<?php echo $fbAppId; ?>';
oauth_url += '&redirect_uri=' + encodeURIComponent('https://www.facebook.com/pages/null/<?php echo $pageId; ?>/?sk=app_<?php echo $fbAppId; ?>');
oauth_url += '&scope=manage_pages'
window.top.location = oauth_url;
</script>
彼らがそれを承認したら、取得した署名付きリクエスト ( $signedRequest = $facebook->getSignedRequest();
) を使用して永続的なトークンをリクエストできます。
$url = 'https://graph.facebook.com/oauth/access_token?client_id=' . $fbAppId . '&client_secret=' . $appSecret . '&grant_type=fb_exchange_token&fb_exchange_token=' . $signedRequest['oauth_token'];
この URL を cURL して、結果の access_token を取得します。
$access_token = substr($response, strlen('access_token='));
DBに保存します。これにより、投稿を取得できます。
$graphUrl = '/' . $pageId . '/posts?access_token=' . $accessToken;
$posts = $this->facebook->api($graphUrl, 'GET');
この access_token の有効期限が切れるまで、私にはわかりません。