最終更新日:

WordPressでカテゴリ関係の関数をいじる

こんにちは、DAINOTE編集部のDAIです。

WordPressで、カテゴリ系の関数をいじっていたのですが、資料がリファレンスしか見つからなかったので、整理しておきます。

ブログのすべてのカテゴリを取得する

  • get_categories()関数を利用すると、配列でカテゴリのデータが取得可能
  • これらをループして、表示する
$categories = get_categories(); 
foreach($categories as $category) {
  echo $category->term_id
  echo $category->name
  echo $category->slug
  echo $category->term_group
  echo $category->term_taxonomy_id
  echo $category->taxonomy
  echo $category->description
  echo $category->parent
  echo $category->count
  echo $category->cat_ID
  echo $category->category_count
  echo $category->category_description
  echo $category->cat_name
  echo $category->category_nicename
  echo $category->category_parent
}

関数リファレンス/get categories

how to display all categories in wordpress?

現在の記事のカテゴリを取得する

  1. get_the_category()[0]: 現在のカテゴリをリスト形式で取得する。一般的に1カテゴリにしか属していないはずなので、[0]で先頭行を指定
  2. 後は、カテゴリオブジェクトの中に含まれている値を取り出していく
  3. 以下のコードは、カテゴリから、カテゴリの名前、件数、説明を抽出しているコードです。

下のコードは、カテゴリページで、カテゴリ詳細を表示するスクリプトです。

<?php
  if(is_category()){
    $category = get_the_category()[0];
    echo '
      <div id="category-container">
        <h3 class="category__name">' . $category->name . '</h3>
        <span class="category__name">投稿数: ' . $category->category_count. '件</span>
        <div class="category__description post-content__text">' . $category->description. '</div>
      </div>
    ';
 };
?>

以上、カテゴリ系の簡単なサンプルコードでした。