Не отображаются поля ACF в таксономии / начинают отображаться везде

Имеется поле в плагине ACF. Но с выводом целая беда.

Структура примерно такая I 1,2,3 II 4,5,6

<?php echo get_field( 'contactofman'); ?>

где contactofman - имя поля не выводит ничего. Аналогичный код работает с обычными постами, страницами, но не с таксономиями. добавляем костыль с tag_id, который по идее должен бы указать, где это поле искать.

 <?php echo get_field( 'contactofman', "cat_products_168"); ?>

где "cat_products" - имя категории; 168 - tag_id одной из категории.

Выводит содержание поля во все категории, даже если заполнено оно только в одной из категорий. К примеру, поле заполняется при редактировании категории 1, а выводится в I, 1,2,3, II и далее.

Вопрос банальный - как привязать вывод содержания конкретного поля "1х" в категорию "1", а поля "Iх" в категорию I.

Вывод изображения с поля для каждой из категорий работает:

<?php $previewLink = get_field('product_slider', $posts->ID)[0]['img']['sizes']['large']; ?>

Попробовал копирнуть способ определения:

<?php echo get_field( 'contactofman', $posts->ID)[0]; ?>

Ничего не выводит.

Документацию читал, форумы читал - проблема распространённая, но решения так и не нашёл.


Ответы (2 шт):

Автор решения: Simon

Достаточно будет передать туда queried object, если я верно понял вашу проблему, таким образом:

$queried_object = get_queried_object(); the_field( “contactfoman”, $queried_object );

→ Ссылка
Автор решения: Misha Jaglovskiy

Согласен с предыдущим оратором ( Simon ). Все верно указано.

А в том случае, когда вы хотите вывести поле таксономии другой страницы вы должны проявить фантазию.

в цикле $categories = get_categories($args);

foreach($categories as $cat) {
  $cat_id = $cat->term_id;
                        $WP_Query = new WP_Query(array('cat' => $cat_id));
                        $term = $WP_Query->get_queried_object();
                        $image = get_field('cat_img', $term);
}

Ну и как видно из примера вам нужен не id категории, а его term

→ Ссылка