У меня есть специальный тип сообщений, называемый Ресурсы .
Тип публикации ресурсов имеет две различные таксономии, связанные с ним: типы ресурсов и теги ресурсов .
Типы ресурсов задают формат / тип ресурса (Руководство, Статья, Информационный бюллетень).
Теги ресурсов устанавливают категоризацию контента (планирование, инвестиции, выход на пенсию)
На странице таксономии типа ресурса (taxonomy-resource_types.php) я хочу иметь список (и ссылки для) всех тегов ресурсов для сообщений, соответствующих этому типу ресурсов. Он будет выводиться с идентификатором «resourceTagList». Это будет действовать как основной список всех тегов ресурсов, используемых в этом указанном типе ресурсов. Затем они будут использоваться в качестве механизма фильтрации на сайте.
Например, на странице архива статей я хочу увидеть список всех тегов ресурсов, которые заданы для любого ресурса, помеченного как статья.
Вот соответствующая часть кода, который я использую в настоящее время на странице таксономии «Тип ресурса»:
<?php if (have_posts()) { ?> <div id="tagList"> <h6>Filter by:</h6> <ul id="resourceTagList"> <li><a href="">All</a></li> <?php //list taxonomy terms $terms = get_terms( 'resource_tags' ); foreach ( $terms as $term ) { // The $term is an object, so we don't need to specify the $taxonomy. $term_link = get_term_link( $term ); // If there was an error, continue to the next term. if ( is_wp_error( $term_link ) ) { continue; } // We successfully got a link. Print it out. echo '<li><a href="' . esc_url( $term_link ) . '">' . $term->name . '</a></li>'; } ?> </ul> </div> <div id="restList"> <?php while (have_posts()) : the_post(); ?> <div class="resListing"> <div class="resText"> <h2><a href="<?php echo get_permalink(); ?>"><?php the_title(); ?></a></h2> <?php the_excerpt(); ?> </div> <div class="resButton"> <a href="<?php echo get_permalink(); ?>" class="blueButton">Learn More</a> </div> </div> <?php endwhile; ?> </div> <?php }else{ ?> <h1>No Resources Found</h1> <?php } ?>
Это приведет к отображению списка ссылок для каждого отдельного тега ресурса, который имеет любую запись, прикрепленную к нему, но это также не проверяет тег ресурса на тип ресурса.
К сожалению, я не уверен, куда идти отсюда, чтобы это произошло, поэтому, надеюсь, кто-то здесь испытал это раньше.
Сначала получите сообщения, в которых вам нужна таксономия
$ posts = get_posts ('resource type' => 'archive')
Затем зациклируйте результаты и используйте эту функцию
wp_get_post_terms ($ post_id)
Я думаю, вы поняли, как отображать результаты