在我的wordpress主题Taxonomy = my-category
&自定义帖子类型的类别为AB,AC,AD
等。
我想打印自定义类别的图标,并在if & else
wp_query
下面的index.php
语句是我的代码。
$args = array(
'post_type' => 'mycpt',
'posts_per_page' => 10,
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while( $query->have_posts() ) {
$query->the_post();
the_content();
if ($term_id === 10){
echo '<p class="icon-gear"></p>';
}
else if ($term_id === 11){
echo '<p class="icon-star"></p>';
}
else if ($term_id === 12){
echo '<p class="icon-tv"></p>';
}
//and continuous ..............
}
}
CSS
.icon-gear:before { background:url('gear.svg') no-repeat; }
.icon-star:before { background:url('star.svg') no-repeat; }
.icon-tv:before { background:url('tv.svg') no-repeat; }
如何打印分类法类别的svg图标?
答案 0 :(得分:0)
我认为这是错误的做法,而且无法维持。
就个人而言,我会考虑使用自定义字段向您的类别添加文本字段,您可以通过仪表板为每个字段设置图标。然后你只需要在循环期间回显一个自定义字段,如果它是空的,可以默认为空白/默认图标。
如果您尚未使用它,请查看高级自定义字段插件。
答案 1 :(得分:0)
经测试的代码,试试这个
$args = array(
'post_type' => 'mycpt',
'posts_per_page' => 10,
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while( $query->have_posts() ) {
$query->the_post();
the_content();
$terms = get_the_terms( $post->ID, 'my-category');
foreach ( $terms as $term ) {
$termID[] = $term->term_id;
}
if ($termID[0] === 10){
echo '<p class="icon-gear"></p>';
}
else if ($termID[0] === 11){
echo '<p class="icon-star"></p>';
}
else if ($termID[0] === 12){
echo '<p class="icon-tv"></p>';
}
//and continuous ..............
}
}