wp_remote_post

説明

mixed wp_remote_post( string $url [ , array $args = array() ] )
POSTメソッドを送信する。

パラメータ

  • $url
    リクエスト先URLを指定。
  • $args
    パラメータを連想配列で指定(省略時はarray())。連想配列の要素は次の通り。
    キー名内容省略時の値
    'method'メソッド種別'POST'
    'timeout'タイムアウト秒数5
    'redirection'リダイレクト回数5
    'httpversion'HTTPバージョン'1.0'
    'user-agent'ユーザエージェント'WordPress/'.$wp_version.'; '.get_bloginfo( 'url' )
    'blocking'ブロッキング指定true
    'headers'ヘッダーarray()
    'cookies'クッキーarray()
    'body'ボディ(クエリパラメータ)null
    'compress'圧縮指定false
    'decompress'非圧縮指定true
    'sslverify'SSLベリファイ指定true
    'stream'ストリーム指定false
    'filename'ファイル情報null

返り値

リクエストを送信(レスポンスを取得)できた場合は連想配列を、送信に失敗した場合は WP_Errorオブジェクトを返す。連想配列は次の通り。
キー名内容
'headers'ヘッダー情報('server'、'date'、'content-type'などの連想配列)
'body'レスポンス本体(文字列)
'response'レスポンス情報('code'と'message'要素を持つ連想配列)
'cookies'クッキー情報(配列)
'filename'ファイル情報

注意

基本的には wp_remote_request関数と同じだが、パラメータ$argsの'method'を省略した場合は'POST'が適用される点が異なる。
POST送信するクエリは、パラメータ$argsの'body'の値として連想配列(またはオブジェクト)で指定する。
※このクエリの展開は、'method'値が'POST'か'PUT'の場合のみ行われる。

使用例

  • 'http://localhost/'にPOSTメソッドを送信する。
    <?php
    $options = array( 'body' => array( 'query_name'=>'query_value' ) );
    $response = wp_remote_post( 'http://localhost/', $options );
    ?>

フィルター

直接実行するフィルターはありません。

アクション

直接実行するアクションはありません。

ソースファイル

/wp-includes/http.php

最終更新 : 2017年05月23日 16:20



お勧め

4.2.3でちょっと変わったショートコード(2018年5月27日 更新)

4.3のリリースまであと少しなわけですが、4.2.3が緊急リリースされました。4.2.2とソースコードを比較すると、ざっくりTinyMCE絡みが多い印象を受けたのですが、ショートコード関連も少し変わっていたので簡単にまとめてみました。

タイトルのみをキーワード検索する(2014年4月3日 更新)

WordPressのキーワード検索は、投稿タイトルと本文のどちらかに指定したキーワードが含まれているかを調べるわけだが、時々タイトルだけとか、逆に本文だけ検索したいケースがある。

プラグインのヘッダー情報を国際化対応しよう(2018年5月27日 更新)

バージョン4.8がリリースされてひと段落。あらためてプラグイン一覧ページを見てみると「Akismet」が「Akismet Anti-Spam (アンチスパム)」と表示されていた。説明文だけじゃなくプラグイン名も国際化対応できたのね。

Gutenbergエディターのフォントを変える(2018年10月16日 更新)

Gutenbergエディターを試していてしっくりこないのが、編集時とそれを投稿した際の見た目の違い。GutenbergエディターとテーマTwenty Seventeenとではまったく異なるタイプのフォントが適用されていることが大きな理由である。

Contact Form 7に確認フェーズを(2012年12月16日 更新)

Contact Form 7はWordPressによるサイト製作でお世話になることが多いプラグインの1つ。ただ、クライアント様によっては、入力、確認、送信の3フェーズにしたいという要望があり、そんな時は別の方法を採用していたのですが、JavaScript(jQuery)を使ってページ遷移しなくてもいいなら確認フェーズは用意できるかなと思い、作り込んでみた。