我正在尝试使用以下代码在标记列表上设置活动类:
<?php
$categories = get_the_category();
$category_id = $categories[0]->cat_ID;
$args = array( 'category' => $category_id, 'post_type' => 'post' );
$postslist = get_posts($args); ?>
<div class="archieve__list">
<ul class="row" data-equalizer data-equalize-on="medium">
<?php foreach ($postslist as $post) : setup_postdata($post); ?>
<?php the_tags( '
<li class="column small-12 medium-4 text-center float-left archieve__item"><span class="archieve__link" data-equalizer-watch>', '</span></li>
'); ?>
<?php endforeach; ?>
</ul>
</div>
我已经研究过使用get_tags()但是这会拉回所有标签,我只希望它能够拉回当前类别的标签。下面这段代码可以实现我想要的,在正在使用的标签上设置一个活动状态,但我再次需要它来输出该类别的标签:
<ul id="blog-tags">
<?php
$tags = get_tags();
if ( $tags ) {
foreach ( $tags as $tag ) {
echo '<li>';
if ( (int) $tag->term_id === get_queried_object_id() )
echo "<b>$tag->name</b>";
else
printf(
'<a href="%1$s">%2$s</a>',
get_tag_link( $tag->term_id ),
$tag->name
);
echo '</li>';
}
}
?>
</ul>
我真的希望后一个选项能够工作,因为它感觉比第一个选项更清洁。
答案 0 :(得分:0)
我不确定你是否真的意思是&#34;当前类别的标签&#34;因为类别和标签都是分类法。但是,如果您想要提取当前帖子的标签,可以使用wp_get_post_tags()