WordPressで特定のタクソノミーのタクソノミー名など「ラベル情報」のみ取得する方法

WordPressのタクソノミーに付けられたタームのアーカイブページに「タクソノミー名を表示したい」ことがあって、やり方を調べていたらいくつか方法があったのですが「get_taxonomy_labels」を使うとできることを知りました。

「get_taxonomy_labels」の使い方

「get_taxonomy_labels」には、タクソノミーのオブジェクトを引数に指定する必要があります。

ですので、例えば以下のように「get_taxonomy」を使って取得したオブジェクトを指定すればいいってことですね。

タクソノミーのスラッグが「area」の場合

<?php get_taxonomy_labels( get_taxonomy('area') ); ?>

応用:複数のタクソノミーに付けられたタームのアーカイブページに対応させるにはこうする

複数のタクソノミーに付けられたタームのアーカイブページで「get_taxonomy_labels」を使う場合は、グローバル変数「$taxonomy」にタクソノミーのスラッグが格納されていますので、これを利用して以下のように書いてもいいですね。

<?php get_taxonomy_labels( get_taxonomy( $taxonomy ) ); ?>

タクソノミーのスラッグを動的に取得して、汎用性を持たせています。

まとめ

こうやって書いといてあれなんですが・・・「get_taxonomy_labels」を使うよりも「get_taxonomy」で取得できるオブジェクトにラベル情報も含まれているので、あえて「get_taxonomy_labels」を使う場面ってあんまりないんじゃないのかと思ったりもしました。

もし「こんな場合には『get_taxonomy_labels』を使ったほうがいいよね」という考え方がありましたら、是非ともご教示いただけますとうれしいです。

著者:bouya Imamura