Описание функции get_settings_errors()
Функция get_settings_errors() возвращает массив ошибок, связанных с настройками, которые были добавлены в результате проверки данных. Она используется для отображения сообщений об ошибках, например, при сохранении настроек в админке.
Функция может фильтровать эти ошибки по типу и контексту, что удобно для отображения только нужных сообщений.
Параметры
$type
Тип: string
Обязательный: Нет
По умолчанию: null
Описание: Тип ошибки для фильтрации
Возможные значения:
0:
1: error
2: updated
3: settings
$setting
Тип: string
Обязательный: Нет
По умолчанию: null
Описание: Имя настройки для фильтрации ошибок
Возможные значения:
0: имя_настройки
Возвращаемое значение
Тип: array
Описание: Массив ошибок настроек
Возможные значения:
• Массив ошибок при наличии
• Пустой массив если ошибок нет
Примеры использования
Базовый пример получения всех ошибок настроек
$errors = get_settings_errors();
if (!empty($errors)) {
foreach ($errors as $error) {
echo $error['message'].'
';
}
}
Выводит все ошибки, если они есть
Получение только ошибок типа ‘error’
$errors = get_settings_errors('error');
if (!empty($errors)) {
// Обработка ошибок
}
Фильтрует ошибки по типу
Получение ошибок для настройки ‘my_setting’
$errors = get_settings_errors('my_setting');
if (!empty($errors)) {
// Обработка ошибок для 'my_setting'
}
Фильтрует ошибки по имени настройки
Отображение ошибок настроек в админке
add_action('admin_notices', function() {
$errors = get_settings_errors();
if (!empty($errors)) {
foreach ($errors as $error) {
echo ''.$error['message'].'';
}
}
});
Использует хуки для показа уведомлений
Безопасность
Валидация входных данных: Параметры проходят валидацию внутри функции
Санитизация: Ошибки автоматически очищаются WordPress
Рекомендации: Используйте wp_kses_post() для вывода сообщений об ошибках
— Связанные функции
Добавляет ошибку настроек
Удаляет ошибку настроек
— Примечания
– Ограничения
Функция возвращает только ошибки, добавленные с помощью add_settings_error()
– Частые проблемы
- Пустой массив ошибок при отсутствии добавленных ошибок
- Неправильный фильтр может вернуть неожиданные результаты