get_termsで属する記事がないターム名も一覧表示する【WordPress】
- WordPress -
2019.11.25
カスタムタクソノミーのターム一覧をページに表示する必要があったので、以下コードを書いてみました。
カスタムタクソノミー名は"column_category"で作ってます。
<?php
$terms = get_terms( 'column_category' );
foreach ( $terms as $term ) {
echo esc_html($term->name);
}
?>
でも、これだと
記事が1つも紐づいてないタームが表示されない
という問題がありました。
で、結局めちゃくちゃ考えて遠回りして無駄にサブループ回してなんとか実現できたんですが、そんな面倒なことしなくても超簡単な方法があったんですね・・・。
get_terms()のパラメータに'hide_empty=0'を指定するだけです。
<?php
$terms = get_terms( 'column_category', 'hide_empty=0' );
foreach ( $terms as $term ) {
echo esc_html($term->name);
}
?>
これで、正真正銘、全てのタームを全出力できました。
やはり、しっかりと読みこむべきはまずWordPress公式サイトですね・・・。