Фильтр acf/update_field

Описание

Используется для изменения массива настроек $field перед сохранением в базе данных.

Не следует путать этот фильтр с acf/update_value, который аналогичным образом используется для изменения значений полей.

Журнал изменений

  • Добавлено в версии 5.0.0

Параметры

apply_filters( 'acf/update_field', $field );
  • $field (array) Массив поля, содержащий все настройки.

Модификаторы

Этот фильтр предоставляет модификаторы для работы с определёнными полями. Доступны следующие имена фильтров:

  • acf/update_field Применяется ко всем полям.
  • acf/update_field/type={$type} Применяется ко всем полям определённого типа.
  • acf/update_field/name={$name} Применяется ко всем полям определённого имени.
  • acf/update_field/key={$key} Применяется ко всем полям определённого ключа.

Пример

Этот пример показывает, как изменить настройки поля.

functions.php

<?php
function my_acf_update_field( $field ) {

    // Убедитесь, что все "company" поля обязательны.
    if( strpos($field['name'], 'company') !== false ) {
        $field['required'] = true;
    }
    return $field;
}

// Применить ко всем полям.
add_filter('acf/update_field', 'my_acf_update_field', 10, 1);

// Применить к полям textarea.
// add_filter('acf/update_field/type=textarea', 'my_acf_update_field', 10, 1);

// Применить к полям с именем "hero_text".
// add_filter('acf/update_field/name=hero_text', 'my_acf_update_field', 10, 1);

// Применить к полю с ключом "field_123abcf".
// add_filter('acf/update_field/key=field_123abcf', 'my_acf_update_field', 10, 1);

Обновлено: 02.06.2026