Описание check_admin_referer
— Action
Хук check_admin_referer используется для проверки наличия действительного токена безопасности перед выполнением действий в административной части WordPress. Он срабатывает при обработке отправленных данных из формы и предотвращает CSRF-атаки, обеспечивая безопасность данных пользователя
Примеры использования
Пример проверки токена безопасности перед выполнением действия:
if ( isset($_POST['my_action']) ) {
check_admin_referer('my_action');
// Ваш код для выполнения действия здесь
}
В этом примере мы проверяем токен безопасности перед выполнением действия, связанного с ‘my_action’
Пример с обработкой ошибки проверки токена:
if ( isset($_POST['my_action']) ) {
if ( ! check_admin_referer('my_action', 'nonce_field') ) {
wp_die('Ошибка проверки безопасности');
}
// Ваш код для выполнения действия здесь
}
Здесь мы обрабатываем ошибку проверки токена и выводим сообщение об ошибке, если токен недействителен
Пример использования второго параметра die:
if ( isset($_POST['my_action']) ) {
check_admin_referer('my_action', 'nonce_field', false);
// Ваш код для выполнения действия здесь
}
В этом примере мы не завершаем выполнение скрипта при недействительном токене, что позволяет продолжить выполнение
— Лучшие практики
– Использование
Используйте этот хук при обработке данных форм в административной части WordPress для предотвращения атак CSRF
– Производительность
Проверка токена безопасности не влияет на производительность, так как выполняется быстро
– Предупреждения
Обязательно используйте уникальные идентификаторы для предотвращения коллизий токенов безопасности
Альтернативы
Тип: function
Эта функция используется для проверки уникальности токена безопасности (nonce) на уровне приложения
Используйте ее, когда необходимо дополнительно проверять токены в пользовательских формах