PHPプログラミング

最終更新日:
公開日:

レシピ

Facebook PHP向けSDK

Facebookページの基本データを取得

PHP向けSDKを使い、Facebookページの基本的な情報を取得する方法を解説します。

この記事のポイント

  • SDKを使うための必要情報を取得する
  • SDKを使ってFacebookページの基本データを取得する
  • 基本的なSDK使用方法を確認

目次

SDKを使えばGraphAPIにアクセスできる

SDKと必要な情報が揃っていれば、GraphAPIを使って様々な情報を取得することが可能です。
今回はSDKを使って、最も基本的な部分である「Facebookページ」の基本データを取得してみます。

PHP向けSDKの使用準備はこれから!という方は、別記事「FacebookのPHP向けSDKで何ができるの?使用するための準備」の手順に従ってSDKをインストールしてください。

アプリの必要情報を取得する

まずはFacebookDeveloperのアプリ管理ページを開いて、GraphAPIの呼び出しに必要な次の4つの情報を確認します。
FacebookDeveloper

  • APIバージョン
  • アプリID
  • App Secret
  • アプリ用アクセストークン

4つ目のアクセストークン以外は、アプリのダッシュボードから確認できます。

アクセストークンはツール&サポートページの「Access Token Tools」から確認できます。該当するアプリの「App Token」がアプリ用アクセストークンです。

Note

ここで「アプリ?」と思われた方もいるかもしれません。
Facebookでは、GraphAPIを呼び出すにはプラットフォームに関わらず「アプリ」として登録する必要があります。
ただし、Webサイト・iOSアプリ・Androidアプリなど異なるプラットフォームを1つのアプリに登録することが可能です。

GraphAPIにアクセスするPHPファイルを作成する

いよいよPHPのコードを書いていきます。
今回は「test_site」フォルダの直下にファイル名を「index.php」として作成し、下図の階層で配置します。
パスは必要に応じて置き換えてください。

index.phpに、次のコードを書いてください。

index.phpのコード例

<?php
require_once 'php-graph-sdk-master/src/Facebook/autoload.php';

$fb = new Facebook\Facebook([
	'app_id' => 'アプリID',
	'app_secret' => 'App Secret',
	'default_graph_version' => 'v2.7',
	'default_access_token' => 'アプリ用アクセストークン'
]);

try {
	$res = $fb->get('/graycodepage');

} catch( Facebook\Exceptions\FacebookSDKException $e) {
	var_dump($e);
	exit();
}

var_dump($res->getDecodedBody());

それでは、コードの内容について1つずつ見て確認していきましょう。

SDKのファイルを読み込む

まずはrequire_once関数を使い、FacebookSDKファイルの読み込みを行います。
Facebook」フォルダ内の「autoload.php」を読み込めばOKです。

SDKのクラスを作成

先ほど事前に調べたアプリの情報を使って、Facebookクラスを初期化します。
「アプリID」「App Secret」「バージョン」「アクセストークン」をぞれ置き換えてください。
ここで作成したFacebookクラスのインスタンス「$fb」を使って、GraphAPIへのアクセスを行います。

GraphAPIの呼び出し

「$fb->get(〜)」では、「Page」というGraphAPIを使ってFacebookページの基本データを取得しています。
get関数の中ではFacebookページの「ID」か「ユニークURL」を指定してください。

FacebookページのIDは、ページ管理画面の「基本データ」で調べることができます。

FacebookページのユニークURLは、ページを開くと分かります。
「https://www.facebook.com/」の後ろに続く部分がユニークURLです。

例えば、GrayCodeのFacebookページのユニークURLであれば下図の部分が該当します。

GraphAPIを呼び出したときのエラーに対応するため、get関数try〜catch文で囲んでいます。

取得結果を出力

最後にvar_dump関数で結果を出力していますが、その中でgetDecodedBody関数を呼び出しています。
この関数は、取得結果のオブジェクトから、基本データ部分だけを抽出して配列形式で渡してくれます。

GrayCodeのFacebookページについて取得した結果を出力すると、下図のようになります。

以上、SDKの最も基本的な使い方でした。
次回は公式リファレンスを確認しながら、その他の様々な情報を取得していきます。

Page – Facebook GraphAPI リファレンス