Описание customize_save_validation_before
— Action
Хук customize_save_validation_before позволяет выполнять валидацию настроек кастомизатора перед их сохранением. Он срабатывает в момент, когда пользователь нажимает кнопку ‘Сохранить’ в кастомизаторе, что позволяет проверять и изменять данные перед их сохранением
Примеры использования
Пример проверки обязательного поля перед сохранением:
add_action('customize_save_validation_before', function($manager) {
$input = $manager->get_setting('example_setting')->value();
if (empty($input)) {
$manager->add_setting_error('example_setting', 'Это поле обязательно для заполнения');
}
});
В этом примере мы проверяем, заполнено ли обязательное поле, и добавляем ошибку, если нет
Пример изменения значения настройки перед сохранением:
add_action('customize_save_validation_before', function($manager) {
$setting = $manager->get_setting('example_setting');
if ($setting) {
$setting->value('Новое значение');
}
});
Здесь мы изменяем значение настройки на ‘Новое значение’ перед её сохранением
Пример проверки формата email перед сохранением:
add_action('customize_save_validation_before', function($manager) {
$email = $manager->get_setting('email_setting')->value();
if (!is_email($email)) {
$manager->add_setting_error('email_setting', 'Введите корректный адрес электронной почты');
}
});
Мы проверяем, является ли введённый адрес электронной почты корректным
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо выполнять валидацию данных кастомизатора перед их сохранением
– Производительность
Хук не должен значительно влиять на производительность, так как выполняет валидацию данных
– Предупреждения
Обратите внимание на то, чтобы сообщения об ошибках были понятны пользователю
Альтернативы
Тип: action
Этот хук позволяет выполнять действия после сохранения настроек кастомизатора
Используйте его, если нужно выполнить действия после успешного сохранения настроек