PHP用Data APIライブラリ(その1・準備)

Movable TypeのData APIを、PHPで扱いやすくするライブラリを作ってみました。
数回に分けて、その使い方を解説します。

1.動作環境

以下の環境が必要です。

  • Movable Type 6以上
  • PHP 5.3以上
  • PHPのfile_get_contents関数で、任意のURLにアクセスできる(PHPのallow_url_fopenの設定がonになっている)

また、PHPの特性上、当ライブラリではData APIを同期処理で実行します。

2.ライブラリのダウンロード

ライブラリのソースコードは、以下からダウンロードすることができます。

ダウンロード

ダウンロードしたZipファイルを解凍すると、「mt-data-api.php」というファイルができます。
このファイルをサーバーにアップロードします。

3.ライブラリの読み込み

次に、Data APIを扱いたいPHPのプログラムで、以下のようなコードを追加して、Data APIのライブラリを読み込みます。
「/path/to」の部分は、ご自分のサーバーのディレクトリに合わせて置き換えます。

require_once('/path/to/mt-data-api.php');

例えば、mt-data-api.phpを、サーバーの「/var/www/html/mt」ディレクトリにアップロードした場合だと、以下のコードでライブラリを読み込みます。

require_once('/var/www/html/mt/mt-data-api.php');

4.初期化

Data APIを扱う処理の最初に、以下のような文を入れて、Data APIのオブジェクトを初期化します。
「URL」には、Movable Typeのインストール先ディレクトリにあるmt-data-api.cgiのアドレスを指定します。
また、「クライアントID」には、アプリケーションを識別する文字列を指定します(半角英数字で決めます)。

$api = new MTDataAPI(URL, クライアントID);

5.メソッドの実行

Data APIのオブジェクトを作成したら、各種のメソッドを実行して、Movable Typeとデータをやり取りすることができます。
例えば、IDが1番のブログ(またはウェブサイト)から記事一覧を読み込んで出力するには、以下のようなコードを実行します。
なお、3行目の「your-host」と「path-to-mt」の部分は、Movable Typeのインストール先に合わせて書き換えます。

require_once('path/to/mt-data-api.php');

$api = new MTDataAPI('http://your-host//path-to-mt/mt-data-api.cgi', 'sample');
$response = $api->listEntries(1);
if (isset($response['error'])) {
	print "Error:" . $response['error']['message'];
}
else {
    $entries = $response['items'];
    print '<ul>';
    for ($i = 0; $i < count($entries); $i++) {
        print '<li>' . $entries[$i]['title'] . '</li>';
    }
    print '</ul>';
}