Описание
Используется для выполнения пользовательской проверки значения поля $value перед его сохранением в базе данных.
Журнал изменений
- Добавлено в версии 5.0.0
Параметры
apply_filters( 'acf/validate_value', $valid, $value, $field, $input_name );$valid(mixed) Является ли значение допустимым (boolean) или пользовательским сообщением об ошибке (string).$value(mixed) Значение поля.$field(array) Массив поля, содержащий все настройки.$input_name(string) Атрибут name DOM-элемента поля.
Модификаторы
Этот фильтр предоставляет модификаторы для выбора конкретных полей. Доступны следующие имена фильтров:
acf/validate_valueПрименяется ко всем полям.acf/validate_value/type={$type}Применяется ко всем полям определённого типа.acf/validate_value/name={$name}Применяется ко всем полям с определённым именем.acf/validate_value/key={$key}Применяется ко всем полям с определённым ключом.
Пример
В этом примере показано, как проверить значение поля и вернуть пользовательское сообщение об ошибке.
functions.php
<?php
function my_acf_validate_value( $valid, $value, $field, $input_name ) {
// Прервите выполнение, если значение уже недопустимо.
if( $valid !== true ) {
return $valid;
}
// Не сохраняйте значение, если оно содержит старое название компании.
if( is_string($value) && strpos($value, 'Old Company Name') !== false ) {
return __( 'Пожалуйста, удалите упоминание «Old Company Name».' );
}
return $valid;
}
// Применить ко всем полям.
add_filter('acf/validate_value', 'my_acf_validate_value', 10, 4);
// Применить к полям textarea.
// add_filter('acf/validate_value/type=textarea', 'my_acf_validate_value', 10, 4);
// Применить к полям с именем "hero_text".
// add_filter('acf/validate_value/name=hero_text', 'my_acf_validate_value', 10, 4);
// Применить к полю с ключом "field_123abcf".
// add_filter('acf/validate_value/key=field_123abcf', 'my_acf_validate_value', 10, 4);Обновлено: 02.06.2026