wp_verify_nonce() WP 2.0.4
Проверяет указанный одноразовый код (nonce код).
Одноразовый код создается одной из функций:
Про одноразовые коды читайте в отдельной статье.
Это pluggable функция — т.е. её можно заменить из плагина. Это значит, что она будет работать (подключается) только после подключения всех плагинов, а до этого момента функция еще не определена... Поэтому нельзя вызывать эту и зависящие от неё функции прямо из кода плагина. Их нужно вызывать через хук plugins_loaded или позднее, например хук init.
Замена функции (переопределение) — в плагине можно создать функцию с таким же названием, тогда она заменит текущую функцию.
Хуки из функции
Возвращает
false - если проверка не пройдена;
1 - если проверочный код был создан в последние 12 часов;
2 - если проверочный код был создан в промежуток между последними 12 и 24 часами.
Использование
if( wp_verify_nonce( $nonce, $action ) ){ // проверка пройдена }
- $nonce(строка) (обязательный)
- Код nonce, который нужно проверить. Обычно он передается в запросе: $_POST['_wpnonce'].
По умолчанию: нет - $action(строка)
Ключ, который был указан при создании nonce кода.
Это необязательное значение, которое передается функции: wp_create_nonce('значение'). Если значение не было указано при создании ключа, то и тут его можно не указывать - проверка будет пройдена.
По умолчанию: -1
Примеры
#1. Пример проверки передаваемых данных по $_GET запросу:
<?php $nonce= wp_create_nonce('my-nonce'); ?> <a href='myplugin.php?_wpnonce=<?php echo $nonce ?>&data=какие-то данные'> ... <?php // проверяем данные if( wp_verify_nonce( $_GET['_wpnonce'], 'my-nonce') ){ // обрабатываем данные формы } else die('Проверка не пройдена!'); ?>
Список изменений
С версии 2.0.3 | Введена. |