PHPでFacebookのクローラを判定する

公開: 2014-10-11 00:54
更新: 2016-04-29 06:02

Facebookで例えば診断系を作ったときとか、診断結果をシェアのDescriptionとかに入れたい気分になりますよね。
でも他の人がクリックした時はTopに遷移させたい。そんな葛藤。


そうです。
PHPでFacebookさんのクローラを判定すればいいのです。
⇒ How to recognize Facebook User-Agent - Stack Overflow


こんな関数を用意しましょう

function isFacebookUA() {
        return in_array($_SERVER['HTTP_USER_AGENT'], array(
                'facebookexternalhit/1.1 (+https://www.facebook.com/externalhit_uatext.php)',
                'facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)',
        ));
}

使う時はこう

if(isFacebookUA()) {
        //Facebookだ!
}

これでおっけー



この記事をシェア
この記事にコメントする
書き込む
あっきぃ(@appstars_aki)
Web、iOSなフリーランサーです。好きなものはお寿司です。でもお寿司は高いので普段は雑草とか拾ったドングリを食べています。お仕事や意味もなく毎月お小遣いをくれる人を探してます。

お仕事の依頼や自分で作ったアプリのレビューを希望しちゃう方はaki@appstars.jpまでご連絡ください。