投稿のタグ出力について
2020-04-27
記事の投稿をした時に、タグ付けをして、そのタグを表示したい場合に下記のテンプレートタグを記述します。
1 |
<?php the_tags(); ?> |
このまま使用すると、『タグ:〇〇, 〇〇, 〇〇』というように、<p>タグなどで囲われているわけではなく、『タグ:』というラベルと、実際のタグに当たる部分だけが<a>タグのリンク付で出力されます。
引数はこのようになっています。
1 2 3 4 5 |
the_tags( $before, $sep, $after ); $before ・・・ タグ一覧の前に表示する文字列。初期値は タグ: 。 $sep ・・・・・各タグリンクの間に表示する文字列・記号。初期値では、各タグ間をコンマ(,)で区切ります。 $after ・・・・・最後のタグに続けて表示する文字列。初期値では何も表示しません。 |
(タグ:)を出力させない
デフォルトで表示される『タグ:』は$beforeを‘’として、空欄になるようにすることで、出力させないことができます。
1 |
<?php the_tags(''); ?> |
タグ全体を<ul></ul>で囲む
1 |
<?php the_tags( '<ul><li>', '</li><li>', '</li></ul>' ); ?> |
リンクなしで出力
リンクなしでタグを出力したい場合は、get_the_tags()でタグのオブジェクトを取得し、echoで出力するという形になります。
1 2 3 4 5 6 7 |
<?php $tags = get_the_tags(); if ($tags) { foreach($tags as $tag) { echo '<p>' . $tag->name . '</p>'; } } ?> |
テンプレートタグ/get_the_tags()の解説はこちら
get_the_tags()による情報の取得
get_the_tags()は下記のような記述で、それぞれの情報を取得、出力することができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php $tags = get_tags(); if ($tags) { foreach($tags as $tag) { echo $tag->name.''; // タグ名の出力 echo $tag->slug.''; // タグのスラッグ名の出力 echo $tag->term_id.''; // タグ名IDの出力 echo $tag->description.''; // タグの説明の出力 echo $tag->count.''; // タグに属する記事の数を出力 echo get_tag_link($tag->term_id.''); // タグのリンクだけを出力 } } ?> |