Я использую Advanced Custom Fields / ACF для создания пользовательских полей. Одним из них является список флажков, которые отображают некоторые опции (опция1, опция2, опция3 ...) .
Теперь я хочу отобразить все параметры этого поля на отдельной странице внешнего интерфейса примерно так:
Варианты:
- вариант 1
- вариант 2
- вариант 3
- ...
Как я могу получить все параметры с ключами из ACF?
Ответы:
Функция
get_field_object
ACF может использоваться для получения информации и опций для определенного поля.Сначала вам нужен ключ поля конкретного поля, которое вы хотите вывести. При редактировании группы полей щелкните вкладку параметров экрана в верхней части страницы. Вы должны увидеть опцию, чтобы переключить отображение ключа поля (по умолчанию он скрыт для экономии места):
Получив ключ, вы можете загрузить объект поля и вывести его значения:
источник
Если вы пытаетесь что-то вывести, если флажок установлен, используйте:
Если вы пытаетесь просто отобразить список отмеченных опций, используйте это:
Это даст вам массив значений, которыми вы можете управлять с помощью
foreach
объявления. Использованиеthe_field('checkbox')
даст вам разделенную запятыми строку параметров, которые вы также можете разделить.Я бы также предложил вам зайти на сайт ACF и просмотреть документацию. На большинство вопросов такого типа будут даны достаточно подробные ответы, и разработчик также активно участвует в его форумах поддержки.
РЕДАКТИРОВАТЬ: Если вы хотите, чтобы список доступных опций выводился на страницу для генерации динамического запроса, у меня есть только вещь. Это фрагмент, который я только что построил вчера для получения списка мета-значений из заданного ключа настраиваемого поля (используя ACF). Я сделал это довольно общим для вас. Есть еще один кусок JS для обработки ajax-запроса и довольно запутанная часть php, которая выводит полученные сообщения. Я не могу переписать их - JS - это стандартный ajax-вызов, обращенный к WP, и PHP - это беспорядок условных проверок для 12 различных полей ACF, которые мы отображаем (2 из которых являются повторителями). Основы этого кода здесь, кнопка
onClick
вызывает функцию ajax в отдельном файле JS, а php для самой функции ajax по существу устанавливает массив аргументов для запроса,$selectedOption
или$_POST['option']
как meta_value. Это передается в anew WP_Query( $args );
, который затем используется в цикле, выход которого возвращается в js черезadd_action('wp_ajax_the_ajax_hook', 'fetch_option_list');
иadd_action( 'wp_ajax_nopriv_the_ajax_hook', 'fetch_option_list' ); //for non logged-in users
.источник
foreach
циклический переход. Более поздние функции выводят список сообщений через ajax, но я оставил этот бит вне