岐阜市でHP制作会社を経営(とはいえ私一人w)。新しいサイト作りに取り組んでいます。Newfacebookページの仕様変更で何が変わるのか2-cover画像の決まり-Facebookページの仕様変更で何が変わるのか。PHP各社のfacebookページを見ていると様々な工夫が見られます。その中で最もポピュラーなのが、『いいね』ボタンを押してくれたユーザにのみ特別なコンテンツを見せる方法ではないでしょうか。筆者のページも『いいね』を押す前と後では若干違うように制作してあります。http://www.facebook.com/webilabこの仕組を実装するには、PHPが必要になります。facebookDEVELOPERサイトでは実装のためのPHPコードが用意されています。前回あたりから専門的な話がチラチラ出始めました。今回ももう少し掘り下げます。続きを読む、からどうぞ。『いいね』ボタンによるページ変更を実装するためには最低5つのファイルを準備します。読み込んで実行させ、アクセスユーザが『いいね』を押しているかを判断し、押している場合はiine_click.htmlを、押してない場合はiine_mada.htmlを表示させます。読み込みで何らかのエラーが発生した場合はerror.htmlを表示させます。順に解説しますが、htmlの説明は実際に表示させるコンテンツになりますので解説を省略します。parce_signed_request.phpfacebookから『いいね』など様々な情報を抽出するための関数を定義しています。このPHPコードがfacebookから提供されているわけです。サイトからコードを抜き出してみました。‘+/’));}?>内容については深く考えず、このコードをnotepadなどにコピペして、parce_signed_request.phpという名前で保存します。これで、一つ目のファイルの完成です。注意点は保存の際に文字コードの指定に注意すること。保存する際の文字コードはUTF-8Nです。文字コードについては以前このブログでも紹介しています。index.phpこのファイルをfacebookアプリに登録します。これはfacebookでは用意されていませんので自身で記述して下さい。コードは以下のとおり。‘error.html‘;//4}?>これもほぼコピペで使えます。入力し直す必要があるのは番号の付いた4箇所。『アプリケーションの秘訣』はアプリ登録した時の設定画面にありますのでそれを書き写します。2~4のhtmlファイルについてはそれぞれ自分で名付けたファイル名に書きなおして下さい。2『いいね』を押しているユーザ向け、3まだ押してないユーザ向け、4エラー用になります。これもUTF-8Nで保存することを忘れないように。index.phpについてはもう少し解説を続けます。コードの解説ですので、より知りたい方だけ見て下さい。2行目・・・最初に紹介したPHPファイル、parse_signed_request.phpを読み込んでいます。3行目・・・『signed_request』というデータの存在をPOSTで確認しています。facebookではページ移動の際、様々なデータがバックグラウンドでやり取りされています。requestは、facebookとアプリ都の間で情報を共有する際に使われます。4行目・・・signed_requestにデータが存在した場合、parse_signed_request.phpで設定した関数parse_signed_request関数でデータを取得します。関数に必要な因数はさきほどifの条件分岐で存在を確認した$_POST[‘signed_request’]と、『アプリケーションの秘訣』です。帰ってきたデータは変数$dataに代入されます。5行目・・・変数$dataは配列になっています。『いいね』の判断は配列キー’page’に収められた配列のキー’liked’に収められています。『いいね』を押している、それ以外なら押していないと判断します。あとは条件に合わせてそれぞれのページをincludeしていきます。以上で『いいね』によるページ表示の解説は終わりですが、今回紹介したsigned_requestは様々なコンテンツ作りに役立ちます。後日解説したいと思います。