WordPress Core Application Programming Interface (API) は、いくつかの個別の API で構成されており、それぞれの API は、特定の機能セットに関連する機能とその使用方法をカバーしています。これらの API は、プラグインやテーマが WordPress のコア機能と相互作用し、変更し、拡張することを可能にするプロジェクトインターフェイスを形成しています。
なぜコア API を使うべきか
WordPress おいて開発する場合は、次の理由からコア API を使用することを強く推奨されます:
- コア API は、フック、アクション、フィルター、ヘルパー関数を提供しているため、WordPress 向けの開発を容易にします。
- WordPress があなたのために「面倒な作業」(データベース呼び出し、入力の検証、セキュリティ、フォーム構築) を行うため、あなたがそれを行う必要がありません。
- コア API を使用することで、コードの後方互換性と将来性の両方が保証されます。
- API により、プラグイン/テーマのオプションページ、インラインヘルプドキュメントなどを wp-admin にシームレスに統合できます。
WordPress コア API
以下は WordPress コア API を構成する個々の API の概要です。各 API の詳細については、それぞれの Codex ページを参照してください。
Dashboard Widgets API
WordPress 2.7で追加された Dashboard Widgets API を使用すると、プラグインまたはテーマの作者は新しいウィジェットを非常に簡単に追加できます。API を使用して作成されたウィジェットは自動的に管理ダッシュボードに表示され、ドラッグ & ドロップ、最小化、設定を含むすべての標準的なカスタム機能が含まれ、画面オプションに表示されるため、ユーザーは必要に応じて非表示にできます。
Database API
WordPress 0.71で追加された Database API は、データベース層に保存されている名前付きの値としてのデータにアクセスするための正しい方法を提供します。
File Header API
WordPress 1.5で追加され、WordPress 2.9と3.0で拡張された File Header API は、テーマとプラグインのファイルヘッダーの使用に関する関数とフックで構成され、それらのファイルからメタ情報 (名前、バージョン、作者、URI、説明など) を取得する機能を提供します。
Filesystem API
WordPress 2.6で追加された Filesystem API は、もともと WordPress 独自の自動更新機能のために作られたものです。この API は、WP_Filesystem_Base クラスと、個々のホストのサポートに応じてローカルファイルシステムへ接続するさまざまな手段を実装しているいくつかのサブクラスを使って、さまざまな種類のホスト上でローカルファイルをファイルシステムへ安全に読み書きするために必要な機能を抽象化しています。
HTTP API
WordPress 2.7で追加され、WordPress 2.8でさらに拡張された HTTP API は、WordPress の HTTP リクエストを標準化します。この API は Cookie、gzip エンコードとデコード、チャンクデコード (HTTP1.1の場合)、その他さまざまな HTTP プロトコルの実装を扱います。API はリクエストを標準化し、送信前に各メソッドをテストし、サーバーの設定にもとづいて適切なメソッドを使用してリクエストを行います。
Metadata API
WordPress 2.9で追加された Metadata API は、WordPress のさまざまなオブジェクトタイプのメタデータを取得・操作するためのシンプルで標準化された方法です。オブジェクトのメタデータは単純なキーと値のペアで表されます。オブジェクトには、同じキーを共有し、値のみが異なる複数のメタデータエントリーが含まれる場合があります。
Options API
WordPress 1.0で追加され、バージョン1.2と1.5で拡張された Options API は、データベースにデータを保存するためのシンプルで標準化された方法です。この API を使えば、オプションの作成、アクセス、更新、削除を簡単に行うことができます。すべてのデータは wp_options
テーブルに任意のカスタム名で保存されます。
Plugin API
WordPress 1.5で追加された Plugin API では、関数やメソッドをフックすることでアクションやフィルターを作成できます。関数やメソッドは、アクションやフィルターが呼び出されたときに実行されます。フックは WordPress が提供するもので、プラグインが WordPress の他の部分にフックできるようにするものです。つまり、特定の時間にプラグイン内の関数を呼び出し、プラグインを動作させます。
Quicktags API
WordPress 3.3で追加された Quicktags API を使用すると、WordPress エディターのテキスト (HTML) モードにボタンを追加できます。
Rewrite API
WordPress 2.1で追加された Rewrite API は、Pretty パーマリンク機能を使用するためのリライトルールを管理するために使用されます。データベースの値からリライトルールを生成するメソッドがいくつかあります。リライトルールを更新する際に内部的に使用されるほか、特定の投稿、ページ、カテゴリーアーカイブなどの URL を検索するためにも使用されます。また、テーマやプラグインの開発者は新しいカスタムリライトルールを指定できます。
Settings API
WordPress 2.7で追加された Settings API を使用すると、設定フォームを含む管理ページを半自動的に作成・管理できます。これにより、プラグインやテーマの開発者は設定ページ、ページ内のセクション、セクション内のフィールドを定義できます。新しい設定ページを登録したり、既存の設定ページに新しい設定セクションやフィールドを追加したりできます。
Shortcode API
WordPress 2.5で追加された Shortcode API は、コンテンツを取り込むためのシンプルなフックを作成する関数のセットです。プラグイン開発者は、対応する [ショートコード] をコンテンツに挿入することでユーザーが投稿やページに追加できる特別な種類のコンテンツ (フォーム、コンテンツジェネレータ、ギャラリーなど) を作成できます。
Theme Modification API
WordPress 2.1で追加された Theme Modification API は、テーマの変更値の利用に関する関数とフックで構成されています。これらの関数は、テーマ作者がテーマの変更値をオプションとして保存したり取得したりするために使用できます。
Theme Customization API
WordPress 3.4で追加された Theme Customization API を使用すると、テーマ開発者はテーマカスタマイズ管理画面 (別名: テーマカスタマイザー) にテーマ固有のカスタムオプションを追加できます。
Transients API
WordPress 2.8で追加された Transients API は、キャッシュされたデータにカスタム名と期間を指定してデータベースに一時的に保存し、その後有効期限が切れて削除されるシンプルかつ標準化された方法を提供します。Transients API は Options API とよく似ていますが、有効期限という機能が追加されており、wp_options
データベーステーブルを使用してキャッシュ情報を一時的に保存するプロセスを簡素化します。
Widgets API
WordPress 2.8で追加された Widgets API を使用すると、開発者はテーマのサイドバーやその他のウィジェット化されたエリアで使用するカスタムウィジェットを構築できます。この API は、ウィジェットの作成プロセスを簡素化し、すべてのウィジェットをマルチインスタンスに対応させます。
XML-RPC WordPress API
WordPress 1.5で追加された XML-RPC WordPress API を使用すると、他のシステムがリモートであっても WordPress に接続して通信できます。これには、投稿クライアント (デスクトップおよびモバイル) や、ファイルから複数の投稿を作成するなどのバッチタスクを実行するその他のソフトウェアが含まれます。
WordPress.org API
WordPress.org サイトで利用できる API も用意されています:
- Secret Key:
wp-config.php
の秘密鍵とソルト。 - Stats API: WordPress が稼働している Web サイトのシステムに関する統計。
- Version Check API: WordPress のバージョンチェッカー。
- Translations API: プラグインとテーマで利用可能な翻訳に関する情報を提供します。
- Credits API: WordPress のコードベースに貢献しているさまざまな個人に関する情報で、
/wp-admin/
のクレジット画面で使用されます。 - Popular Import Plugin API: WordPress プラグインディレクトリにある人気のインポートプラグインのリスト。これは、
/wp-admin/
のツール > インポート画面で使用されます。 - Plugins API: WordPress.org でホストされているプラグインに関する情報を提供し、WordPress がそれらのプラグインの更新のためにリポジトリを確認できるようにします。
- Themes API: WordPress.org でホストされているテーマに関する情報を提供し、WordPress がそれらのテーマの更新のためにリポジトリを確認できるようにします。
- Editor API: テーマとプラグインのエディターが、phpDocumentor で生成されたドキュメントへの参照を取得するために使用されます。
- Events API: 場所によってフィルター可能な、今後の WordCamp および Meetup イベント
- Browse Happy API: 最新のブラウザリリースマトリックス。
- Serve Happy API: WordPress での PHP バージョン互換マトリックス。