acf_add_validation_error()
Додає помилку перевірки та запобігає збереженню відправлених даних із форми ACF.
Як правило використовується на хуку acf/validate_save_post .
Хуків немає.
Повертає
null
. Нічого. Обриває збереження даних.
Використання
acf_add_validation_error($input, $message);
-
$input
(обов’язковий) Вміст атрибута name поля, для якого потрібно вивести помилку. Формат
acf[ключ поля]
, наприкладacf[field_615baebe3f16d]
. Це пов’язано з тим, що саме за цим значенням JS шукатиме поле.
Якщо передати порожній рядок, то помилка буде відноситься до загальної помилки і виведена над формою, що відправляється.
- $message
-
Повідомлення про помилку, наприклад
Шеф, всё пропало! Всё пропало!
.
За замовчуванням: ”
Приклади
#1 Перевіримо поле та виведемо помилку
add_action('acf/validate_save_post', 'my_acf_validate_save_post'); function my_acf_validate_save_post() { // Видаляємо всі помилки для адміністратора (видалення коду, якщо не потрібно). if( current_user_can('manage_options') ) { acf_reset_validation_errors(); } // Робимо поле обов'язковим для заповнення if( empty($_POST['acf']['field_615baebe3f16d']) ) { acf_add_validation_error( 'acf[field_615baebe3f16d]', 'Заповніть це поле!' ); } }
#2 дані, що повертаються
Приклад даних, що повертаються для одного поля:
{ "success": true, "data": { "valid": 0, "errors": [ { "input": "acf[field_615baebe3f16d]", "message": "Це надто маленький цінник для таких видів робіт." } ] } }
Приклад даних, що повертаються для загальної помилки:
{ "success": true, "data": { "valid": 0, "errors": [ { "input": "", "message": "Потрібно вказати ціну перевезення хоча б для одного виду транспорту: "Легковий авто", "Позашляховик" або "Мікроавтобус"." } ] } }
список змін
З версії 5.0.0 | Введено. |
acf add validation error ACF 5.10.2
function acf_add_validation_error( $input, $message = '' ) { return acf()->validation->add_error( $input, $message ); }