WordPressのタグ表示
ページのカテゴリーを表示するには、
1 |
<?php the_category(); ?> |
ですが、ページのタグ一覧を表示するためにはこう書きます。
1 |
<?php the_tags(); ?> |
ただしこれだと、「タグ:」という余計なものがついちゃうんですよね〜。
(例:このページのタグ一覧↓)
+++++++++++++++++++++++++++
+++++++++++++++++++++++++++
まあデフォルトでついてくれるとたしかに楽な人には楽なんでしょうが、カスタマイズしたいと思ってる人にとっては、デザインのとき邪魔だと思うこともあります。
そんなときはこうすればいいだけです。
1 |
<?php the_tags(''); ?> |
()内に空文字をいれただけ。
つまり、()内はタグの前につく言葉なのです。
だからもし「タグ:」の代わりに「タグ一覧→」にしたければ、
1 |
<?php the_tags('タグ一覧→'); ?> |
と書けばいい。そうするとこうなりますね〜↓
+++++++++++++++++++++++++++
+++++++++++++++++++++++++++
()内に画像のURL貼って、タグ一覧の前にタグのアイコンをつけるとかしてもいいかも!
しかし、タグ一覧の前につく文字くらい自分で書かせてもいいと思うんだけどw
WordPressはどこまでも情弱にやさしいということでしょうか。
ブログ内のタグを全て表示
ひとつひとつの投稿に対してではなく、ブログ全体のタグを表示させたいと思ったときは、また別の方法を考えなければなりません。
それにこのままでは、たとえばひとつひとつのタグをあるクラスのdivなどで囲みたいとおもったとき、上の <?php the_tags(); ?> では少し不便ですね。
そういうときは、ループをまわすコードをこのように書けば解決します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php $tagList = $wpdb->get_results($wpdb->prepare(" SELECT t.term_id,t.name,t.slug,tt.count FROM $wpdb->terms AS t JOIN $wpdb->term_taxonomy AS tt USING(term_id) WHERE tt.taxonomy = 'post_tag' ORDER BY tt.count DESC ")); foreach ($tagList as $value):?> <div class="tag"> <a href="<?php bloginfo('url');?>/?tag=<?php echo $value->slug; ?>/"> <?php echo $value->name; ?> </a> </div> <?php endforeach;?> |
こちらの記事を参考にさせていただきました↓