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テーマを作成してる方にご参考なるかと思います。

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

Ads

関連記事

WordPress プログラミング

wordpressで特定のページを非表示にし404ページへリダイレクトする方法

2022.01.15
65
WordPress

WordPressで続きを読む・もっと見るボタンを実装する方法

2022.07.02
22
WordPress プログラミング

カスタム投稿タイプで月別・年別アーカイブページが表示されない場合の対処方法

2022.01.13
530
WordPress

【WordPress】URL設定を間違えて管理画面にログイン出来ない。【即解決】

2022.06.13
53