Written by Kasumi

WordPressでカテゴリ一覧を表示する方法【結論:get_categories関数を使おう】

WordPressでカテゴリ一覧をヘッダー・フッター・サイドバーに表示したい。

また、出力条件を色々と加えたい。

本記事ではこのような悩みを解決。

実装方法について解説します。

実装コード

<ul class="category-list">
  <?php
  $categories = get_categories();
  foreach ($categories as $category) :
    $category_link = get_category_link($category->cat_ID);
  ?>
    <li><a href="<?php echo $category_link; ?>"><?php echo $category->name; ?></a></li>
  <?php endforeach; ?>
</ul>

カテゴリ一覧を出力する実装コードです。

get_categories関数を使う事でWordPressに登録されてるカテゴリを配列で取得できます。

foeachを使って上記配列から値を取り出し、カテゴリ登録されてる数だけループ・実行します。

foreach内で以下コードを追加する事でカテゴリ名・リンク先URLを出力できます。

カテゴリページへのリンクURL
get_category_link($category->cat_ID);

カテゴリ名
$category->name;

以上で実装完了です。

出力条件を変更したい

<ul class="category-list">
  <?php
  $args = array(
    'orderby'    => 'id',//並び順をID順に変更
  );
  $categories = get_categories($args);
  foreach ($categories as $category) :
    $category_link = get_category_link($category->cat_ID);
  ?>
    <li><a href="<?php echo $category_link; ?>"><?php echo $category->name; ?></a></li>
  <?php endforeach; ?>
</ul>

出力条件を変更したい場合はget_categoriesの引数にパラメータを指定します。

$argsに定義されてる連想配列内に条件を変えるパラーメータを指定します。

上記コード例だとorderbyを使ってカテゴリの並び順をID順に変更する条件を加えてます。

設定出来るパラメータ一覧は以下記事をご参考ください。
https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_categories

まとめ

自作でWordPressテーマを作成してる方にご参考なるかと思います。

以上で解説を終わります。

目次

関連記事

WordPress プログラミング

【簡単wordpress】すべての投稿記事内にある同じURL・文字列を一括置換する方法【Search Regexプラグイン】

2022.02.08
5310
WordPress

【WordPress】記事詳細ページでタームを取得する方法

2023.02.01
887
WordPress プログラミング

ワードプレスのツールバー(アドミンバー)を表示・非表示にする方法

2020.05.29
922
WordPress プログラミング

【htaccess・プラグイン不要】WordPressの投稿記事をhtmlのmetaタグでリダイレクトする方法

2022.04.04
2236