Показывать пользовательское поле из пользовательского термина таксономии в пользовательском типе записи


Мне нужно показать список пользовательских терминов таксономии, назначенных текущему типу записи, с именем и пользовательским полем. (Создано с использованием расширенных настраиваемых полей)

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

echo '<ul class="taxanomy-name">';
echo get_the_term_list( $post->ID, 'taxanomy-name', '<li>', ',</li><li>', '</li>' );
echo '</ul>';

Несмотря на то, что я хочу показать пользовательское поле из каждого термина таксономии вместе с именем. Код для отображения настраиваемого поля в каждом шаблоне страницы терминов таксономии является:

the_field('custom-field-name', 'taxanomy-name_ID');

Мой вопрос в том, как мне отобразить пользовательское поле вместе с именем пользовательского термина таксономии в списке?

Пример:

<ul>
 <li>
  Taxanomy Term Name 1
  <img src="custom-taxanomy-term-1-custom-field-image">
 </li>

 <li>
  Taxanomy Term Name 2
  <img src="custom-taxanomy-term-2-custom-field-image">
 </li>
</ul>

Я надеюсь, что вы сможете мне помочь.. Это не давало мне покоя уже несколько часов. Спасибо!

Author: Mikkel Tschentscher, 2013-01-27

1 answers

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

$terms = get_the_terms( $post->ID, 'taxanomy-name' );
echo '<ul>';
foreach( $terms as $term ):
    echo '<li>';
    echo $term->name;
    the_field( 'custom-field-name', 'taxanomy-name_' . $term->term_id );
    echo '</li>';
endforeach;
echo '</ul>';
 1
Author: Milo, 2013-01-27 16:21:53