WordPressでのPOSTリクエストの送信方法と基本的なコード例


  1. wp_remote_post()関数を使用する方法: WordPressには、外部のURLにPOSTリクエストを送信するための組み込みの関数であるwp_remote_post()があります。以下は、その基本的な使い方の例です。
$response = wp_remote_post( $url, array(
    'method'      => 'POST',
    'timeout'     => 45,
    'redirection' => 5,
    'httpversion' => '1.0',
    'blocking'    => true,
    'headers'     => array(),
    'body'        => array( 'key1' => 'value1', 'key2' => 'value2' ),
    'cookies'     => array()
) );
if ( is_wp_error( $response ) ) {
    $error_message = $response->get_error_message();
    echo "POSTリクエストがエラーを返しました: $error_message";
} else {
    echo "POSTリクエストが成功しました。応答コード: " . wp_remote_retrieve_response_code( $response );
}
  1. cURLを使用する方法: WordPressでは、cURLを使用してPOSTリクエストを送信することもできます。以下は、cURLを使用したPOSTリクエストの基本的なコード例です。
$url = 'http://example.com/api/endpoint'; // POST先のURL
$data = array(
    'key1' => 'value1',
    'key2' => 'value2'
);
$options = array(
    CURLOPT_URL => $url,
    CURLOPT_POST => true,
    CURLOPT_POSTFIELDS => http_build_query( $data ),
    CURLOPT_RETURNTRANSFER => true
);
$curl = curl_init();
curl_setopt_array( $curl, $options );
$response = curl_exec( $curl );
if ( curl_errno( $curl ) ) {
    $error_message = curl_error( $curl );
    echo "POSTリクエストがエラーを返しました: $error_message";
} else {
    $http_code = curl_getinfo( $curl, CURLINFO_HTTP_CODE );
    echo "POSTリクエストが成功しました。応答コード: $http_code";
}
curl_close( $curl );

以上の方法とコード例を使用することで、WordPressでのPOSTリクエストの送信ができます。必要に応じて、URLや送信するデータを適切に設定してください。