Как добавить содержимое настраиваемого поля в список терминов таксономии?
У меня есть пользовательский термин таксономии "художники", который является фамилией художника и пользовательским полем "имя". Чтобы создать список всех исполнителей с их именем и фамилией, я использую следующий код, но он печатается в виде двух отдельных списков. Должен ли я объединять таблицы (никогда этого не делал) для этого или есть другой способ записать их так, чтобы все они были в одном списке?
<?php while ( have_posts() ) : the_post(); ?>
<?php
$args = array( 'taxonomy' => 'artists' );
$terms = get_terms('artists', $args);
$count = count($terms); $i=0;
if ($count > 0) {
$term_list = '<ul class="artist-list">';
foreach ($terms as $term) {
$i++;
$termid = 'artists_' . ($term->term_id);
$termfirst = the_field('first_name', $termid);
$term_list .= '<li><a href="' . get_term_link( $term->slug, $term->taxonomy ) . '" title="' . sprintf(__('View all post filed under %s', 'my_localization_domain'), $term->name) . '">' . $termfirst . $term->name . '</a></li>';
}
$term_list .= '</ul>';
echo $term_list;
}
?><?php endwhile; // end of the loop. ?>
1 answers
Заменить the_field
на get_field
. Первый повторяет данные без необходимости явного вызова echo
имени функции, второй возвращает данные , что вам нужно при хранении данных в переменной для последующего использования в вашей функции. В вашем случае объедините имя/фамилию до его вывода. Это должно исправить ваш список.
Хотя теги были отредактированы (спасибо тошо), на случай, если кому-то интересно, так как в ОП не ясно, функция the_field
не следует путать с родным get_post_meta
(и другими) Функции Wordpress, которые обрабатывают извлечение метаданных сообщений. Вместо этого эта конкретная функция и ее аналог в get_field
являются частью плагина "Расширенные пользовательские поля"