Mill's Note

【Wordpress関数】get_the_tags()

/

投稿に紐づいたタグを一覧(配列)で取得する、Wordpressテンプレートタグ。
戻り値を指定して、タグの様々な情報を取得・出力することができます。

投稿IDを指定することでループ外でも使用できます。

get_the_tags() 呼び出しコード

呼び出しコードパラメータ説明
<?php $cats = get_the_tags(); ?>なし現在のページに紐づくタグ (投稿ループ内)
<?php $cats = get_the_tags(投稿ID); ?>投稿ID指定した投稿に紐づくタグ (ループ外)

get_the_tags() 戻り値

変数名内容
term_idintタグID
namestringタグ名
slugstringタグスラッグ
countint記事数
descriptionstringタグ説明
taxonomystringtaxonomy名
term_taxonomy_idint taxonomy ID
あまり使用しない戻り値、及び、エイリアスは記載していません。

get_the_tags() の使用例

タグの情報を呼び出し、必要な戻り値を利用して出力します。

タグなしの場合もある為、if(has_tag()){ ~ } でタグを持つ場合のみ表示させるようにしています。

最初、又は、指定番目のタグを1件だけ取得

タグは配列で取得しますので、何番目かを[n] として指定。
配列は 0 から数えますので、最初のタグなら [0] を指定します

PHP
<?php
  $terms = get_the_tags();
  if(has_tag()){ /* タグを持つか判定 */
    /*  配列の〇番目を指定 - 例は最初のタグ  */
    $name = $terms[0]->name;
    $id   = $terms[0]->term_id;
?>
<a href="<?php echo get_tag_link($id); ?>"><?php echo $name; ?></a>
<?php } ?>

紐づくタグをまとめて取得

foreach{ } で紐づいている全てのタグを出力します。

PHP
<?php
  $terms = get_the_tags();
  if(has_tag()){ /* タグを持つか判定 */
    foreach ($terms as $term){
      $name = $term->name;
      $id   = $term->term_id;
?>
<a href="<?php echo get_tag_link($id); ?>"><?php echo $name; ?></a>
<?php } } ?>