用語集
TOPICS
翻訳元記事はこちらです。
REST API を初めてご利用ですか?当社のドキュメントで使用されているフレーズについて、最新情報を入手してください。
コントローラー
Model-View-Controllerは、ソフトウェア開発における標準的なパターンです。まだ慣れていない場合は、少し読んでスピードを上げる必要があります。
WP-API内では、リソースエンドポイントを表すクラスの標準パターンを持つためにコントローラの概念を採用しています。すべてのリソースエンドポイントは WP_REST_Controller
を継承し、共通のメソッドを実装しています。
HEAD, GET, POST, PUT,DELETEリクエスト
これらの “HTTPメソッド “は、HTTPクライアントがリソースに対して実行する可能性のあるアクションのタイプを表します。例えば、GET
リクエストは投稿のデータを取得するために使われ、DELETE
リクエストは投稿を削除するために使われます。これらはweb全体で標準化されているため、総称して「HTTP メソッド」と呼ばれています。
WordPressの関数に詳しい方なら、GET
リクエストはwp_remote_get()に相当し、POST
リクエストはwp_remote_post()に相当します。
HTTPクライアント
「HTTP クライアント」というフレーズは、WP-API と対話するために使用するツールを指します。Postman(Chrome)やREST Easy(Firefox)を使ってブラウザでリクエストをテストしたり、httpieを使ってコマンドラインでリクエストをテストしたりします。
WordPress 自体は WP_HTTP
クラスの HTTP クライアントと関連する関数(wp_remote_get()
など)を提供しています。これを使って、ある WordPress サイトに別の WordPress サイトからアクセスすることができます。
リソース
「リソース」とは、WordPress の中にある個別の実体のことです。これらのリソースは、「投稿」「固定ページ」「コメント」「ユーザー」「ターム」などとして既にご存知の方も多いかもしれません。WP-APIはHTTPクライアントがリソースに対してCRUD操作を行うことを許可します。(CRUDはCreate,Read,Update,Deleteの略)
実用的には、WP-APIリソースとの連携方法は以下の通りです。
GET /wp-json/wp/v2/posts
投稿のリストを取得します。これはWP_Query
を使うのとほぼ同じです。
GET /wp-json/wp/v2/posts/123
IDが123の投稿を取得します。これは、get_post()
を使うのとほぼ同じです。
POST /wp-json/wp/v2/posts
新規投稿を作成します。これは、wp_insert_post()
を使うのとほぼ同じです。
DELETE /wp-json/wp/v2/posts/123
IDが123の投稿を削除します。これは、wp_delete_post()
を使うのとほぼ同じです。
ルート/エンドポイント
エンドポイントとは、APIを通じて利用できる機能のことです。これには、API インデックスの取得、投稿の更新、コメントの削除などがあります。エンドポイントは特定の機能を実行し、いくつかのパラメーターを取り、クライアントにデータを返します。
ルートは、エンドポイントにアクセスするために使用する「名前」であり、URLで使用されます。ルートは複数のエンドポイントを関連付けることができ、どのエンドポイントを使用するかは HTTP メソッドに依存します。
http://example.com/wp-json/wp/v2/posts/123
を例に説明します。
ルートは wp/v2/posts/123
– wp-json は API 自体のベースパスなので、ルートには wp-json が含まれていません。
このルートには、3つのエンドポイントがあります。
GET
はget_item
メソッドをトリガーにして、投稿データをクライアントに返します。PUT
はupdate_item
メソッドをトリガーにして、更新するデータを取得し、更新された投稿データを返します。DELETE
はdelete_item
メソッドをトリガーして、現在削除した投稿データをクライアントに返します。
注意: 整ったパーマリンクがないサイトでは、ルートは代わりに rest_route
パラメータとして URL に追加されます。上記の例では、完全な URL は http://example.com/?rest_route=wp/v2/posts/123
となります。
スキーマ
「スキーマ」は WP-API のレスポンスデータのフォーマットを表現したものです。
例えば、Postスキーマは、Postを取得するリクエストがid、タイトル、コンテンツ、著者、その他のフィールドを返すことを伝えます。
また、スキーマは各フィールドのタイプを示し、人が読める説明を提供し、どのコンテキストでフィールドが返されるかを示します。