Описание функции wp_verify_nonce()
Функция wp_verify_nonce() используется для проверки действительности nonce-токена в WordPress. Она помогает защитить формы и действия от CSRF-атак, обеспечивая, что запросы выполняются только от авторизованных пользователей.
Функция принимает nonce-токен и действие, к которому он относится, и возвращает результат проверки.
Параметры
$nonce
Тип: string
Обязательный: Да
Описание: Nonce-токен, который нужно проверить
Возможные значения:
$action
Тип: string
Обязательный: Да
Описание: Действие, к которому относится nonce-токен
Возможные значения:
Возвращаемое значение
Тип: int|null
Описание: Результат проверки nonce-токена
Возможные значения:
• 1 — nonce действителен
• 0 — nonce недействителен
• null — если не переданы параметры
Примеры использования
Простой пример проверки nonce при отправке формы
$nonce = $_POST['my_nonce'];
if (wp_verify_nonce($nonce, 'my_action')) {
// Действие выполнено
} else {
// Ошибка проверки nonce
}
При правильном значении nonce выполнится действие
Пример с обработкой разных случаев результата проверки
$nonce = $_POST['my_nonce'];
$result = wp_verify_nonce($nonce, 'my_action');
if ($result === 1) {
// Действие выполнено
} elseif ($result === 0) {
// Ошибка: nonce недействителен
} else {
// Ошибка: nonce не передан
}
Отображает разные сообщения в зависимости от результата
Безопасность
Валидация входных данных: Проверка входных параметров осуществляется на уровне вызывающей функции
Санитизация: Nonce-токены должны быть сгенерированы с использованием функции wp_create_nonce()
Рекомендации: Всегда проверяйте nonce перед выполнением действий, требующих безопасности
— Связанные функции
Создает nonce-токен для защиты от CSRF
Проверяет nonce для административных запросов
— Примечания
– Ограничения
Nonce действителен только в течение ограниченного времени (обычно 24 часа)
– Частые проблемы
- Ошибка проверки при устаревшем nonce
- Проблемы с передачей nonce в запросе