「問題は、ユーザーがアプリに招待されたときに、リンクがフレームなしでアプリに直接誘導することです (続行するためのいいねボタンはありません)。」
これにより、訪問者が [いいね] ボタンのないページから [いいね] ボタンのあるページにリダイレクトされます。
<script>
if(document.URL.indexOf("fb_source") != -1)
{
top.location.href = "http://www.facebook.com/pages/PAGE_NAME/PAGE_ID/APP_ID";
//change accordingly
}
</script>
「ページが気に入らなかった人はスプラッシュ スクリーンを取得します。気に入った人は中に入ります。」
FQL クエリを実行して、訪問者がすでにページを気に入っているかどうかを確認します。
$page_id = PAGE_ID; //change accordingly
$facebook = new Facebook(array(
'appId' => APP_ID, //change accordingly
'secret' => APP_SECRET, //change accordingly
'cookie' => true,
));
$access_token = $facebook->getAccessToken();
function userIsFan()
{
global $page_id, $facebook, $access_token;
$fql = "SELECT uid from page_fan WHERE uid=me() AND page_id='".$page_id."'";
$param = array('method' => 'fql.query',
'access_token' => $access_token,
'query' => $fql,
'callback' => '');
$response = $facebook->api($param);
if (isset($response[0]))
{
return true;
}
return false;
}
彼らがあなたのページを気に入った場合は、アプリケーション (yourApplication.php) に誘導し、それ以外の場合はスプラッシュ ページ (splashPage.php) に誘導し、あなたのページを気に入るように依頼します。
if (userIsFan())
{
header("Location: yourApplication.php"); //change accordingly
}
else
{
header("Location: splashPage.php"); //change accordingly
}