- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
関数リファレンス/wp verify nonce
提供: WordPress Codex 日本語版
< 関数リファレンス
この項目「関数リファレンス/wp verify nonce」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。
nonce が正しいもので有効期限が切れていないことを、指定されたアクションとの関係も含めて確かめます。この関数は現在のリクエスト(通常は $_REQUEST PHP 変数でアクセス)に入れて送られた nonce を検証するのに使われます。
使い方
<?php wp_verify_nonce( $nonce, $action ); ?>
パラメータ
- $nonce
- (文字列) (必須) 検証する nonce。
- 初期値: なし
- $action
- (文字列/整数) (オプション) アクションの名前。実行中のコンテキストを指定するとともに、nonce 生成時と同じにしてください。
- 初期値: -1
戻り値
- (真偽値/整数)
- nonce が無効なら真偽値 false を返します。それ以外なら次のような整数値を返します:
- 1 – 過去 12 時間以内に生成された nonce。
- 2 – 過去 12 時間を超えて 24 時間以内に生成された nonce。
用例
wp_create_nonce() で生成した nonce を検証:
<?php // nonce を生成し、アクションを実行するリンクのクエリ変数に追加。 $nonce = wp_create_nonce( 'my-nonce' ); echo "<a href='myplugin.php?_wpnonce={$nonce}'>Save Something</a>"; ?> ..... <?php // リクエストを処理するファイルの中で nonce を検証する。 $nonce = $_REQUEST['_wpnonce']; if ( ! wp_verify_nonce( $nonce, 'my-nonce' ) ) { die( 'Security check' ); } else { // ここで目的のアクションを実行。 } ?>
nonce の生存期間に応じて異なるアクションを実行させることもできます:
<?php $nonce = wp_verify_nonce( $nonce, 'my-nonce' ); switch ( $nonce ) { case 1: echo 'Nonce is less than 12 hours old'; break; case 2: echo 'Nonce is between 12 and 24 hours old'; break; default: exit( 'Nonce is invalid' ); } ?>
変更履歴
2.0.3 : 新規導入
ソースファイル
wp_verify_nonce() は wp-includes/pluggable.php
にあります。
関連項目
Nonce関数: wp_explain_nonce() /en, wp_nonce_ays() /en, wp_nonce_field(), wp_nonce_url(), wp_verify_nonce(), wp_create_nonce() /en, check_admin_referer() /en, check_ajax_referer() /en, wp_referer_field() /en
外部リソース
- PHP: $_REQUEST - マニュアル
- Mark Jaquith - WordPress Nonces
- Vladimir Prelovac - Using Nonces in WordPress Plugins
- Wikipedia: ノンス
- wp_verify_nonce vs check_admin_referer - WordPress Answers
関数リファレンス、テンプレートタグ目次もご覧ください。
最新英語版: WordPress Codex » Function Reference/wp_verify_nonce (最新版との差分)