説明
rest_ensure_response() は、データをREST APIのレスポンスオブジェクトに変換する関数です。
基本構文
rest_ensure_response( WP_REST_Response|WP_Error|WP_HTTP_Response|mixed $response ): WP_REST_Response|WP_Error
引数
$response:レスポンスにするデータ
戻り値
WP_REST_Response。
使い方(サンプル)
return rest_ensure_response( array( 'ok' => true ) );
注意点
- REST APIのコールバックの戻り値として使います。
実務での使いどころ
- REST APIのコールバックで、戻り値を、
WP_REST_Responseに整えるとき。 - ヘッダーや、ステータスコードを、設定した応答を作るとき。
よくあるミスと対処
WP_Errorを、そのまま渡して、成功として扱っている。この関数は、WP_Errorをそのまま返す。- ステータスコードを、指定していない。作成の成功は、
201などにする。 - 配列を返すだけでよいのに、複雑にしている。配列を、そのまま返しても、WordPressが整える。
NG例
return array( 'ok' => true ); // ヘッダーやステータスを、設定できない
OK例
$response = rest_ensure_response( array( 'ok' => true ) );
$response->set_status( 201 );
return $response;
使い分け早見表
| 関数 | 役割 |
|---|---|
rest_ensure_response() |
戻り値を、REST用の応答に整える |
register_rest_route() |
エンドポイントを登録する |
wp_send_json() |
Ajax用に、JSONを出力して終了する |
関連項目
register_rest_route()、rest_url()
公式リファレンス:rest_ensure_response() | Function | WordPress Developer Resources

コメント