JavaScript
Facebook

Facebook アプリでキャンバスページに遷移したら強制的に、Web ページにリダイレクトさせる

More than 5 years have passed since last update.

基本設定 > Facebook上のアプリ に URL を設定すると、Facebook のユーザーページのメニューにアプリのショートカットが表示されますが、そのリンク先は Facebook のキャンバスページになっています。

これを、自分のサイトに強制的にリダイレクトする場合は以下のコードをサイト側に書いてあげれば OK です。

<script>

// キャンバスページを表示すると、URL に fb_source というクエリが付加される
if (location.href.indexOf('fb_source') >= 0) {
// リダイレクトさせたいページの URL
// top.location.href = 'http://your_site'; ← 一部ブラウザで動かない指摘ありました
window.open('http://your_site/', '_top');
}
</script>

これをすることで、キャンバスページを無視してメニューにショートカットを表示できます。

ちらっとだけキャンバスページが表示されてしまうのはご愛嬌。

訂正: @pinmarch_t さんご指摘あざます!(∩´∀`)∩