Условная логика позволяет вам устанавливать правила, определяющие, когда произвольное поле должно отображаться, на основе значений других полей в той же группе полей. Вкладка настроек «Условная логика» доступна для большинства типов полей ACF, предоставляя вам высокую степень контроля над тем, как поля представляются редакторам контента.
Условная логика в ACF обычно применяется внутри группы полей. Она не контролирует, где будет отображаться сама группа полей, что обрабатывается правилами расположения в настройках группы полей.
Скриншоты

Поля Email и Изображение с примененными настройками условной логики, чтобы они отображались только тогда, когда пользователь вводит значение в поле «Имя автора».

Поле «Имя автора» в том виде, в каком оно появляется у редакторов контента до ввода данных.

Условная логика в действии. Пользователь ввел значение для «Имени автора», что привело к отображению других полей в группе.
Базовое использование
Вкладка «Условная логика» изначально представляет вам один переключатель, позволяющий включить ее. Вы можете сделать это с любым полем, даже с первым полем в новой группе полей. Однако в этом случае вы не сможете создавать правила, так как нет других полей, на которых можно было бы их основывать.
Каждое правило условной логики состоит из трех выпадающих списков. Щелчок по первому выпадающему меню отображает список полей, находящихся в данный момент в группе полей. Второй выпадающий список определяет условие, которое должно быть выполнено. Третий выпадающий список дополнительно определяет эти условия конкретными значениями.
Условия
Существует шесть возможных условий, которые вы можете выбрать при создании этих правил. Отображаемые условия основаны на типе поля, выбранного в первом выпадающем списке. Некоторые поля не могут соответствовать определенным условиям, поэтому эти параметры не отображаются при применении логики на основе этих полей.
- Имеет любое значение
- Не имеет значения
- Значение равно
- Значение не равно
- Значение соответствует шаблону
- Значение содержит
Если вы не можете определить значения или варианты выбора при создании поля, вы не можете указать конкретные значения или шаблоны при использовании условной логики. Единственное «значение», которое можно прочитать в этом случае, — это то, было ли в поле введены данные или нет.
Например, выбор поля «Изображение» в первом выпадающем списке ограничит вас выбором между «Имеет любое значение» и «Не имеет значения» во втором. Это связано с тем, что «значение» поля «Изображение» основано на том, есть ли в нем содержимое. Условие считается выполненным, если изображение присутствует (или нет). Вы можете убедиться, что само изображение соответствует определенным спецификациям, внеся изменения в настройки валидации поля «Изображение».
Установка нескольких правил
Точный метод добавления дополнительных правил зависит от вашей цели. Несколько правил для условной логики в ACF следуют принципу «и/или». Если вы хотите, чтобы выполнялись два или более условий, вы используете «и». Вы бы использовали «или» для ситуаций, когда выполнения любого из условий достаточно для ваших целей.
Нажмите «и» в конце любого правила, чтобы продублировать его. Измените новое правило как обычно через выпадающее меню и нажмите «Сохранить изменения», чтобы сохранить его в вашей группе полей. Это гарантирует, что для выполнения условия будут соблюдены оба правила.
Нажмите «Добавить группу правил» под текущим правилом, чтобы добавить правило «или». Сделайте свои выборы в выпадающих меню и нажмите «Сохранить изменения». В этом случае условная логика будет применена, если выполняется любое из условий.
Чтобы удалить правила, наведите курсор на конец правила и щелкните значок минуса, когда он появится.
Противоречивая условная логика
При использовании настроек условной логики необходимо соблюдать осторожность, так как в некоторых случаях можно установить правила, которые противоречат друг другу.
Например, вы можете настроить правило, которое гласит, что определенное условие выполняется только тогда, когда поле «Истина/Ложь» одновременно и отмечено, и не отмечено. Это явно невозможно выполнить.
Как использовать условную логику
Это краткое руководство демонстрирует, как использовать условную логику, чтобы предоставить редакторам контента наиболее подходящее поле на основе предыдущего выбора, который они сделали. Первый шаг — создать группу полей под названием «Детали события» со следующими полями:
- Поле «Переключатель»
- Поле «Выбор даты и времени»
- Поле «Google Карта»
- Поле «URL»
Затем щелкните на поле «Переключатель» и дайте ему описательную метку, например «Тип события». Заполните две записи в поле «Выбор»: Физическое и Виртуальное. Вы будете использовать эти варианты в качестве основы для вашей условной логики.
Единственное изменение, которое вам нужно будет сделать для поля «Выбор даты и времени», — это дать ему метку, например «Дата и время события». Оно будет появляться для обоих типов событий, поэтому пока нет причин использовать условную логику.
Последние два поля, «Google Карта» и «URL», — это где вы определите настройки условной логики. Назначьте метку, например «Карта события», полю «Google Карта» и щелкните на вкладке «Условная логика».
Нажмите переключатель «Условная логика», чтобы установить первое правило. Первый выпадающий список по умолчанию установлен на первое поле в группе, но вы можете щелкнуть по нему, чтобы изменить его на другое поле. В этом случае оставьте его установленным на «Тип события». Щелкните второй выпадающий список и выберите «Значение равно». Наконец, щелкните третий выпадающий список и выберите «Физическое».
Затем нажмите кнопку «и» в конце правила, чтобы добавить второе правило. На этот раз установите первый выпадающий список на «Дата и время события», а второй на «Имеет любое значение». Это гарантирует, что редакторы контента не увидят поле «Google Карта» до тех пор, пока не выберут тип события и не укажут время и дату.
Последний шаг — настроить аналогичное правило для поля «URL». Откройте поле и назначьте метку, например «Ссылка на событие». Щелкните на вкладке «Условная логика» и повторите процесс из предыдущего шага, но на этот раз установите третий выпадающий список на «Виртуальное».
В качестве альтернативы вы можете установить второй выпадающий список на «Значение не равно» и оставить третий установленным на «Физическое». Это позволит вам создавать больше типов виртуальных событий в переключателе «Тип события», гарантируя при этом, что только физические события отображают поле «Google Карта», а все виртуальные события отображают поле «URL».
Наконец, нажмите «Сохранить изменения», чтобы сохранить новые правила условной логики в вашей группе полей. Вы можете начать новую запись, чтобы увидеть условную логику в действии.







