WordPressのループ内でカテゴリー名を1つだけ出力する方法をご紹介いたします。
カテゴリーをリンク付きで出力する関数としてはthe_category()関数が簡単ですが、the_category()関数だと設定してあるすべてのカテゴリーが出力されます。
デザインの関係で、複数のカテゴリーが設定されていても、出力するカテゴリーは1つだけにしたい場合もあるかと思いますので、その方法をご紹介したいと思います。
スポンサードリンク
WordPressのループ内で記事に設定してあるカテゴリーを1つだけ出力する方法
記事に設定してあるカテゴリーを1つだけ出力するには、ループ内で以下のように記述します。
<?php $cat = get_the_category(); $catname = $cat[0]->cat_name; $catslug = $cat[0]->slug; ?> <a href="<?php echo esc_url( home_url( '/' ) ).'category/'.$catslug; ?>"><?php echo $catname; ?></a>
まずはget_the_category()でカテゴリーの情報を取得し、$catnameに1つ目のカテゴリー名、$catslugに1つ目のカテゴリースラッグを代入しています。
それらをテーマ内で出力することで、設定してあるカテゴリーの1つ目だけを表示できます。リンクが必要ない場合は、a要素は削除してください。
あとがき
カテゴリーを複数設定する可能性があるサイトでは、結構使える方法だと思います。1つ目だけでなく、2つ目も出力したい場合は、「$cat[1]->cat_name」も出力すればOKです。$cat[0]が1つ目、$cat[1]が2つ目のカテゴリー情報になります。