Facebook で年齢制限のあるファン ページから投稿/ウォール投稿を取得して、自分のサイトに表示するのに助けが必要です。
ファンページは年齢制限があり、17 歳以上 (Facebook にログインしている場合) のみが閲覧できます。しかし、私のウェブサイトは (ローカルで) 年齢ゲートの背後にあるため、その Facebook ページからの投稿を自分のサイトに表示したいと考えています。
以前にそれが行われたのを見たことがありますが、その人のコードを見て、彼/彼女がどのようにそれを行ったかを確認することはできませんでした.
私は自分のアカウントに関連付けられた Facebook でアプリを作成しました。このアプリは、Facebook の任意のページを表示できます (年齢制限があるかどうかに関係なく)。
これが私のコードです
<?php
function fetchUrl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
$feedData = curl_exec($ch);
curl_close($ch);
return $feedData;
}
$profile_id = "(Page id)";
//App Info, needed for Auth
$app_id = "123456789";
$app_secret = "123456789abcdefghij";
$authToken = fetchUrl("https://graph.facebook.com/oauth/access_token?type=client_cred&client_id={$app_id}&client_secret={$app_secret}");
$json_object = fetchUrl("https://graph.facebook.com/{$profile_id}/posts?{$authToken}");
$feedarray = json_decode($json_object);
echo $json_object;
foreach ( $feedarray->data as $feed_data )
{
echo "<h2>{$feed_data->name}</h2><br />";
echo "{$feed_data->message}<br /><br />";
}
?>
このコードは、年齢ゲートがないページでは機能しますが、年齢ゲートがあるページでは無効として返されます ($authToken が何も返さないため、JSON は何も処理できません)。
誰か私がこれを理解するのを手伝ってくれませんか?