Movable Type CMSプラットフォーム Movable Type
ドキュメントサイト

Blogブログ

Movable Type 6 のData APIについて

Movable Type 6 では、新しいデータアクセスのしくみ (API、エーピーアイ) が導入されています。今回は、そのData API についてご紹介します。

API とは

そもそも、API とは何でしょうか。

APIとは、"Application Programing Interface (アプリケーション・プログラミング・インターフェイス)"の略で、主に OS や、アプリケーション ソフトウェアなどが、外部のプログラムと連携するために提供している規格や仕様のことです。

Twitter や Facebook などのウェブサイトも、外部のウェブサイトやアプリケーションむけに、自社のサービスを利用するためのウェブ API を提供しています。

Data API とは

Movable Type 6 から提供される Data APIも、Twitter や FacebookのAPIと同じような、ウェブ API となります。

具体的には

  • Movable Type に保存されている記事や、コメントなどのデータを編集する
  • 記事やコメントをあたらしく追加する
  • スマートフォンから写真をアップロードする
といった事が Movable Type の管理画面を使わずにできるようになります。

Data API は、次のような特徴があります。

  • MTML が分からなくても、HTML や JavaScript といった既存の技術を使ってサイトを構築することができる
  • JavaScript や PHP など、Perl 以外の開発言語をつかうことができる
  • Movable Type の認証・権限管理のしくみを利用しているためセキュアである
  • スマートフォンアプリなど、ウェブサイト以外から利用することができる
  • API を拡張して、独自のサービスやプラグインなどと連係することができる (Perlの知識が必要です)

また、JavaScript のライブラリが MIT ライセンスで提供されているので、むずかしいことをあまり覚えなくても使う事ができます。

サンプルコード (JavaScript)

var api = new MT.DataAPI({
    baseUrl:  "https://your-host/path/to/mt/mt-data-api.cgi",
    clientId: "your-client-id"
  });

  api.listEntries(siteId, function(response) {
    for (var i = 0; i < response.items.length; i++) {
        var entry = response.items[i];
        // Render an entry
    }
  });

Data API でできること

Data API を使うと、どんなことができるようになるのでしょうか。具体的な例をあげてみます。

  • Movable Type のコミュニティ機能のような、ユーザー参加型のサイトをつくる
  • Movable Type の管理画面をカスタマイズせずに、独自の管理画面をつくる
  • 公開されているウェブサイトで、記事をインクリメンタル・サーチする
  • ページを一番したまでスクロールしたら、自動的にページネーションする
  • 必要最低限の再構築だけで、動的なサイトをつくる

もちろん、これら以外にもアイディアしだいでいろいろなことが実現できます。

Data API のドキュメントを読んで、みなさんのアイディアを実現してみてください。

実際の利用例

最後に、Data API を実際に使ってみた方々の記事を、いくつかご紹介します。

  • このエントリーをはてなブックマークに追加