Кнопка-переключатель (Radio)

Обзор

Поле «Переключатель» для плагина Advanced Custom Fields позволяет создать список из выбираемых значений.

Скриншоты

История изменений

  • Возвращаемое значение добавлено в версии 5.4.0
  • Пустое значение добавлено в версии 5.3.8
  • Добавлено в версии 4.1.7

Настройки

ИмяОписание
ВариантыКаждый новый вариант должен начинаться с новой строки. Для большего контроля значения и ярлыка вы можете использовать связку значение:ярлык (например, ‘red’ : ‘Красный’)
Разрешить пусто значение?По умолчанию, должно быть выбрано хотя бы одно значение, но благодаря этому пункту можно разрешить не заполнять это поле. Использует JS в своей работе.
ДругоеДобавляет дополнительное текстовое поле для ввода текста.
Сохранить значенияПозволяет сохранить значение для «другого» поля в базе данных. При следующем запросе это значение появится в списке вариантов.
Значение по умолчаниюЗначение, которое будет присвоено полю при создании нового поста. Нужно указывать именно значение, а не ярлык поля.
Текст после поля вводаПозволяет выбрать формат возвращаемого значения для функции get_field() или похожих функций.

Примечание

Если вы используете возможности local JSON, то при сохранении «других» (дополнительных) значений они не будут добавлены при обновлении страницы. Это возникает из-за того, что JSON файл не обновляется при этой операции и перезаписывает все значения в базе данных.

Использование в шаблоне

Базовое

Пример показывает, как отобразить одиночное значение.

<p>Цвет: <?php the_field('color'); ?></p>

Отобразить значение и ярлык

В примере показано как получить значение и ярлык выбранного пункта переключателя без использования настройки «Возвращаемое значение».

<?php
// Переменные
$field = get_field_object('color');
$value = $field['value'];
$label = $field['choices'][ $value ];
?>
<p>Цвет: <span class="color-<?php echo $value; ?>"><?php echo $label; ?></span></p>

Настройка «Возвращаемое значение»

В примере показано как получить значение и ярлык выбранного пункта переключателя с использования настройки «Возвращаемое значение» (выбран пункт «оба»).

<?php
// Переменные
$color = get_field('color');
?>
<p>Цвет: <span class="color-<?php echo $color['value']; ?>"><?php echo $color['label']; ?></span></p>

Условный оператор

С помощью условий вы можете выполнять разный код в зависимости от выбранных значений.

<?php if( get_field('color') == 'red' ): ?>
	<p>Выбран красный переключатель!</p>
<?php endif; ?>

Query posts

Этот пример показывает, как с помощью query posts вывести значение «red».

<?php
$posts = get_posts(array(
    'meta_query' => array(
        array(
            'key' => 'color', // имя произвольного поля
            'value' => 'red',
        )
    )
));
if( $posts ) {
    //...
}
?>