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】全テンプレートページで使用可能なグローバル変数を定義する方法【簡単】

2022.02.23
5464
WordPress プログラミング

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

2022.04.04
2245
WordPress

【簡単】Contact Form 7に確認画面・完了ページを設定する方法

2023.02.24
2002
WordPress

【WordPress】PC・SPデバイスによってパラメータの条件を変更する方法

2024.03.07
274