記事が所属するタームの一覧にタームアイコンを表示したい
-
ニュースというカスタム投稿があり、
ニュースには「お知らせ」「重要」「WEB」のタクソノミー’news-cat’があります記事の所属するタクソノミーの一覧を表示するように以下のようにしました
<?php $loop = new WP_Query( array( 'post_type' => 'news', 'posts_per_page' => 9 ) ); if($loop->have_posts()) : // 該当する投稿がある場合 ?> <div id="news_topics_list"> <ul> <?php while ( $loop->have_posts() ) : $loop->the_post(); // ループ開始 ?> <li> <?php // カスタムタクソノミー 'news-cat' の処理 $termbook = array_shift(get_the_terms($post->ID, 'news-cat')); $termbookimg = esc_html($termbook->slug); $img = '<img src="' . get_bloginfo('stylesheet_directory'). '/images/icon/label_' . $termbookimg. '.png" alt="' . $cat->cat_name . '" />'; ?> <h3><a>/#main"></a><span><?php the_date("Y年m月d日"); ?></span><?php echo $img; ?><p><?php the_title();?></p></h3> <?php if ($terms = get_the_terms($post->ID, 'news-cat')){ $termnames = array(); foreach( $terms as $term ){ array_push( $termnames, $term->name ); } echo join(' ',$termnames); } ?> </li> <?php endwhile; // ループ終わり ?> </ul> </div> <?php else: // 該当する投稿が無い場合 ?> <p>ニュースはありません</p> <?php endif; ?>
この場合、複数のタクソノミー名を取得し表示できているのですが、
タクソノミー名だけでなく、アイコンも表示したいと考えています色々試行錯誤したんですが、うまくいかず
以下のようにスラッグでのpng表示はできるのですが、<li> <?php // カスタムタクソノミー 'news-cat' の処理 $termbook = array_shift(get_the_terms($post->ID, 'news-cat')); $termbookimg = esc_html($termbook->slug); $img = '<img src="' . get_bloginfo('stylesheet_directory'). '/images/icon/label_' . $termbookimg. '.png" alt="' . $cat->cat_name . '" />'; ?> <?php echo $img; ?> </li>
記事
スラッグpng+タクソノミー名(リンク付)、スラッグpng+タクソノミー名(リンク付)
スラッグpng+タクソノミー名(リンク付)
のように複数タクソノミーに所属していてかつ、前にアイコンを表示する事が出来ませんどのように2つを工夫すれば表示できるのか教えてください。
- トピック「記事が所属するタームの一覧にタームアイコンを表示したい」には新たに返信することはできません。