概要
- ユースケース: WordPressのREST APIを活用して、カスタムエンドポイントを作成する手法を理解し、異なるシステムやプラットフォームとのデータ連携やカスタム機能の実装を容易にするため。
- 前提条件: WordPressのプラグイン「WP REST API」が有効化されていること。
サンプルコード
// カスタムエンドポイントを追加する例
function custom_endpoint_content( $data ) {
return 'Hello, this is a custom endpoint!';
}
add_action( 'rest_api_init', function () {
register_rest_route( 'custom/v1', '/endpoint/', array(
'methods' => 'GET',
'callback' => 'custom_endpoint_content',
) );
} );
解説
- `register_rest_route`関数を使用して、`custom/v1/endpoint/`というパスにGETリクエストを受け付けるカスタムエンドポイントを登録している。
- `custom_endpoint_content`関数は、リクエストを受け取った際に返すレスポンスの内容を定義している。
- `rest_api_init`アクションフックを使用して、WordPressのREST APIの初期化時にカスタムエンドポイントを登録するようにしている。
ベストプラクティス
- カスタムエンドポイントのパスは適切な名前空間とバージョンを指定し、他のエンドポイントとの競合を避ける。
- カスタムエンドポイントではセキュリティの観点から適切な権限チェックやデータのバリデーションを行うことが重要。
- レスポンスの形式や構造はAPIのベストプラクティスに従い、適切なエラーハンドリングを実装することで利用者にわかりやすい API を構築する。