WordPress:get_the_categoryでカテゴリー名やスラッグを取得する方法

  • Posted on
  • Category : WordPress
WordPress:get_the_categoryでカテゴリー名やスラッグを取得する方法

普段からWordPressを利用している人なら使ったことある人も多いと思いますが、get_the_categoryを使うことでカテゴリー名やスラッグを簡単に取得・表示させることができます。例えばカテゴリーによって詳細記事のデザインを変更したい場合などに、カテゴリースラッグを用いたクラスを付加させ、そのクラスを用いてスタイルを指定していくことができます。

Codexにも書かれている内容ですが、カテゴリーID・カテゴリー名・カテゴリースラッグをそれぞれ取得・表示したい場合は以下のようにそれぞれ記述します。

<?php
	$category = get_the_category();
	$cat_id   = $category[0]->cat_ID;
	$cat_name = $category[0]->cat_name;
	$cat_slug = $category[0]->category_nicename;
?>

<!-- カテゴリーIDを表示したい所に -->
<?php echo $cat_id; ?>

<!-- カテゴリー名を表示したい所に -->
<?php echo $cat_name; ?>

<!-- カテゴリースラッグを表示したい所に -->
<?php echo $cat_slug; ?>

上記ではカテゴリーID・カテゴリー名・カテゴリースラッグの3つを使用しているので複数記述されていますが、もちろんここまでいらないのであれば複数記述する必要はなく、例えばスラッグだけしか使わないのであれば<?php $category = get_the_category(); $cat_slug = $category[0]->category_nicename; ?>だけの記述でできます。

上記を踏まえて、例えば詳細記事で「カテゴリー毎に背景や見出しなどの見栄えを変更したい」というカスタマイズを行いたい場合、詳細記事を表示するsingle.phpに下記のように記述します。

<?php
	$category = get_the_category();
	$cat_slug = $category[0]->category_nicename;
?>

<article class="category-<?php echo $cat_slug; ?>">
	・・・
</article>

※ここではarticle要素を使用していますが、divなど他の要素を使用して包含している場合は環境に合わせてarticleの部分を変更してください。

上記を記述後にソースを確認すると、article要素に「category-カテゴリースラッグ」という形でクラスが付加されるようになるので、あとはそのクラスを用いて背景や見出しにスタイルを適用していけば、カテゴリーによって見栄えを変更させることができます。

今回紹介した例であればpost_class使えばって感じですが、get_the_categoryは今回紹介したもの以外にもカテゴリーの記事数を取得できるcategory_countや説明文を取得できるcategory_descriptionなどもあるので、あまり使ったことがないという人は覚えておくと何かと便利だと思います。

Back to Top

WordPress:get_the_categoryでカテゴリー名やスラッグを取得する方法

WordPress:get_the_categoryでカテゴリー名やスラッグを取得する方法

/ WordPress

Tagged with:

NxWorld

Sorry... doesn't support your browser

To get the best possible experience using our site we recommend that you upgrade to a modern web browser.NxWorldではご利用中のブラウザサポートはしていません。
Internet Explorerのアップグレード行う、もしくはその他のブラウザを使用しての閲覧をお願いします。