check_ajax_referer

説明

bool check_ajax_referer( [ mixed $action = -1 [ , string $query_arg = false [ , bool $die = true ] ] ] )
AJAXリクエスト時にnonceパラメータを検証する。

パラメータ

  • $action
    ハッシュ生成時の文字列または数値を指定(省略時は-1)。
  • $query_arg
    nonce用ハッシュ値のタグ名を指定(省略時はfalse)。
  • $die
    nonceパラメータの検証結果が無効な場合に強制終了する場合はtrueを指定(省略時はtrue)。

返り値

チェックの結果、パラメータが有効な場合はtrueを、無効な場合はfalseを返す。ただしパラメータ$dieがtrueでチェック結果がfalseの場合は、リクエスト処理が終了(die)となる。

注意

check_admin_referer関数は、フォームサブミット時のnonceパラメータを検証に用いるが、本関数はAJAXリクエスト時のパラメータを検証する場合に用いる。nonceパラメータ名は、パラメータ$query_argの値、'_ajax_nonce'、'_wpnonce'の順にその有無が確認され、先に見つかったものがnonceパラメータとなる。

なおnonceパラメータの無効時に独自の処理を行う場合は、パラメータ$dieにfalseを指定する。


使用例

  • AJAXリクエスト時にnonceパラメータを検証する。
    <?php check_ajax_referer( 'my-action' ); ?>
  • AJAXリクエスト時にnonceパラメータ名'my-ajax-nonce'の値を検証する。
    <?php check_ajax_referer( 'my-action', 'my-ajax-nonce' ); ?>
  • AJAXリクエスト時にnonceパラメータを検証し、検証結果を調べる。
    <?php if ( check_ajax_referer( 'my-action', false, false ) ) : ?>

フィルター

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

アクション

[2.1.0]検証結果を返す直前に'check_ajax_referer'アクションを呼び出す。パラメータ$actionには本関数が受け取った値が、$resultには検証結果となる。
do_action( 'check_ajax_referer', $action, $result );

ソースファイル

/wp-includes/pluggable.php.php

最終更新 : 2014年07月19日 12:37



お勧め

WordPressと組み込まれている主なJavaScriptライブラリのバージョン一覧(2018年5月27日 更新)

WordPressの更新が遅れていたサイトを少し前に更新したところ、jQuery UI sortableを使って拡張したページに不具合が発生しました。WordPressの更新に伴って内部のjQuery UIが更新されたことに起因すると思われ、これを機にWordPressとそれに組み込まれたJavaScriptライブラリのバージョンを確認してみました。

ショートコードを使ってテーマ内の画像URLを簡単に指定する(2018年5月27日 更新)

投稿記事の中で画像パーツを使いたいときがある。画像パーツの配置場所は、/imgディレクトリのようなテーマ外の場合と、/wp-content/themes/mytheme/imagesディレクトリのようなテーマ内の場合があり、今回は後者のケース。ショートコードを使って投稿記事の画像ファイルのURLを記述する方法を紹介したい。

Gutenbergでカスタムフィールドを使う(2018年8月10日 更新)

Gutenbergの新エディターではカスタムフィールドのウィジェットが表示されない。既存のカスタムフィールドのデータはなくなるわけでないので、新エディター上で編集・更新できないか調べてみた。

Login rebuilder 2.4.0の新機能を紹介(2018年5月27日 更新)

昨日、約半年ぶりにLogin rebuilderをアップデートし、著者ページ(author page)の閲覧を制限できる機能を追加した。この機能は、著者ページの閲覧によってユーザーIDが類推されることを防ぐことが目的としている。

ブロックエディターで編集したページが出力した余分な改行を削除(2019年2月22日 更新)

ブロックエディターで編集したページのHTMLソースは、投稿本文部分の改行が目立った。Webページとしての表示は問題ないのだが、データとしては不要なので削除することにした。