wp_safe_remote_request()


WordPress関数wp_safe_remote_request()は、外部リソースへのHTTPリクエストを安全に実行するために使用されます。この関数は、SSL証明書の検証や悪意のあるリダイレクトを防止する機能を提供します。

シンタックス

wp_safe_remote_request( string $url, array $args = array() );

引数の説明:

  • $url (string) — リクエスト先のURL。
  • $args (array) — リクエストオプションを指定する配列。

例1. GETリクエストを送信する

次のコードは指定したURLにGETリクエストを送信します。

$response = wp_safe_remote_request( 'https://example.com/api/data' );

例2. POSTリクエストを送信する

次のコードはPOSTデータを送信します。

$response = wp_safe_remote_request( 'https://example.com/api/submit', array( 'method' => 'POST', 'body' => array( 'key' => 'value' ) ) );

例3. タイムアウトを設定する

リクエストのタイムアウトを10秒に設定します。

$response = wp_safe_remote_request( 'https://example.com/api/data', array( 'timeout' => 10 ) );

例4. リクエストヘッダーを追加する

カスタムヘッダーを含めてリクエストを送信します。

$response = wp_safe_remote_request( 'https://example.com/api/data', array( 'headers' => array( 'Authorization' => 'Bearer token' ) ) );

例5. リクエストの結果を確認する

リクエストが成功したかどうかを確認し、エラーがある場合はログに記録します。

$response = wp_safe_remote_request( 'https://example.com/api/data' );
if ( is_wp_error( $response ) ) {
    error_log( $response->get_error_message() );
} else {
    $body = wp_remote_retrieve_body( $response );
}

注意事項

wp_safe_remote_request()を使用するときは、常にSSLが有効であることを確認してください。


関連機能: