説明
wp_remote_retrieve_body() は、HTTPレスポンスの配列から、本文(ボディ)を取り出す関数です。
基本構文
wp_remote_retrieve_body( array|WP_Error $response ): string
引数
$response:HTTP関数の戻り値
戻り値
本文の文字列。
使い方(サンプル)
$body = wp_remote_retrieve_body( $res );
$data = json_decode( $body, true );
注意点
- JSONの場合は
json_decode()で配列にします。
実務での使いどころ
wp_remote_get()などの応答から、本文(HTML、JSON)を取り出すとき。
よくあるミスと対処
- 通信に失敗したとき(
WP_Error)も、空文字が返る。失敗と、本文が空のときを、区別できない。先に、is_wp_error()で確認する。 - ステータスコードを、確認していない。404や500でも、本文が返る。
- JSONを、
json_decode()したあとの、エラー確認をしていない。
NG例
$data = json_decode( wp_remote_retrieve_body( $response ), true ); // 失敗した場合の確認がない
OK例
if ( ! is_wp_error( $response ) && 200 === (int) wp_remote_retrieve_response_code( $response ) ) {
$data = json_decode( wp_remote_retrieve_body( $response ), true );
}
使い分け早見表
| 関数 | 取り出すもの |
|---|---|
wp_remote_retrieve_body() |
本文 |
wp_remote_retrieve_response_code() |
ステータスコード |
wp_remote_retrieve_headers() |
ヘッダーの一覧 |
関連項目
wp_remote_get()、wp_remote_retrieve_response_code()
公式リファレンス:wp_remote_retrieve_body() | Function | WordPress Developer Resources

コメント