みなさんこんにちは。
FacebookのGraphAPIってやっぱ楽しいですね。
個人情報をここまで簡単に取れるAPIをいじれるのはとても楽しいですよ。
今回はPHPを使ってあるページにいいねが押してあるかどうかを判別する方法を紹介します。
簡単なことではありますが、2通りの方法を紹介します。
以下が今回の記事の目次です。
1, Facebookページにいいねが押してあるかどうかを判別する
今回やること
ページにいいねが押してあるかを判別するのですが、ページにも2種類あります。
- Facebookページ
- その他のWebページ
僕が調べた中では、それぞれやり方が異なっていたため、それぞれのやり方を紹介します。
以下からPHPのFacebookSDKをダウンロードしておいてください。
Facebookページにいいねが押してあるかどうかを判別する
よく色々なページで書いてあるのがこちらの方法です。
以下、コードを示します。
'appId', 'secret' => 'secret', 'cookie' => true, )); $user_id = $facebook->getUser(); if($user_id){ try { $ret_obj = $facebook->api('/me/likes/"FacebookページのID"'); } catch (FacebookApiException $e){ } } else { $login_url = $facebook->getLoginUrl(); }
上記の「appId」「secret」「FacebookページのID」を書き換えれば使用することが出来ます。
リファレンスは以下にあるので参考にしてみてください!
API Reference GraphAPI User Belong部分
あるWebページにいいねが押してあるかどうかを判別する
上記の方法では、Facebookページにいいねが押してあるかどうかは判定出来ますが、普通のWebページだと判別出来ません。
なので以下の方法を使用しましょう!
'appId', 'secret' => 'secret', 'cookie' => true, )); $user_id = $facebook->getUser(); if($user_id){ try { $fql = "SELECT url FROM url_like WHERE user_id = me() AND url = 'https://tagamidaiki.com'"; $ret_obj = $facebook->api(array( 'method' => 'fql.query', 'query' => $fql )); } catch (FacebookApiException $e){ } } else { $login_url = $facebook->getLoginUrl(); }
ここではFQLを使って判定しました。tagamidaiki.comにいいねをしているかどうかを判定することが出来ます。
2013年7月18日追記
上記のコードのサンプルを作成しました!
https://tagamidaiki.com/sample/graph-api-like-call/
あえてvar_dumpの結果を表示しているのでいいねを押すとどうなるのか確認してみてください。
サンプルのソースコード全ては以下になります。
getUser(); if($user_id){ try { $fql = "SELECT url FROM url_like WHERE user_id = me() AND url = 'https://tagamidaiki.com'"; $ret_obj = $facebook->api(array( 'method' => 'fql.query', 'query' => $fql )); } catch(FacebookApiException $e){ error_log($e); } } else { $login_url = $facebook->getLoginUrl(); } ?>GraphAPIを用いてページにいいねが押してあるか判別する方法 いいねしていただいてありがとうございます!!( ・ิv・ิ)
いいねを押して更新すると表示が変わります!
以下が参考文献です。
Facebook API Reference FQL url_like
最後に
FacebookのGraphAPIを触るときは、まずリファレンスを見まくるといいです(全てにおいてそうか)
Facebookはこまめにリファレンスを更新してくれるので、出来ることはほとんど書いてあります。
また、それぞれのAPIを試すときは、GraphAPIExplorerを使用すると便利です。
みんなもGraphAPIを使って楽しいFacebook LIFEを過ごしましょう!なんちて!
更新情報はFacebookページで!
ブログの更新、読んで役立つ他ブログの記事などを更新しています。