2018.05.07

WordPress

wordpressのカテゴリリストを自由にカスタマイズできるget_categoriesの活用法

カテゴリで分類しているイメージ

wordpressのカテゴリ一覧を出力したいときに、一番シンプルな方法はwp_list_categoriesを利用することです。ですがこの方法で出力されるコードは成形が一定のもので、リンク無しのリストや投稿数をタグの中に含めるような出力をすることはできません。 これを編集可能にするにはget_categoriesが簡単で有用です。
今回はそのwordpressタグ、get_categoriesについて紹介します。

get_categoriesのサンプルコード

<?php 
$args = array(
	'type'           => 'post',
	'child_of'       => 0,
	'parent'         => '',
	'orderby'        => 'name',
	'order'          => 'ASC',
	'hide_empty'     => 1,
	'hierarchical'   => 1,
	'exclude'        => '',
	'include'        => '',
	'number'         => '',
	'taxonomy'       => 'category',
	'pad_counts'     => false 
); 
$categories = get_categories( $args );
?>

上記のパラメータは必要なものだけ記述すれば問題ありません。表示順や出力するカテゴリーorタクソノミをここで指定できます。ここではすべてデフォルト設定のまま利用したこととします。

get_categoriesの呼び出しサンプルコード

<?php foreach( ( get_the_category() ) as $category ):?>
////呼び出したいコード////
<?php endforeach;?>

上記のforeach内に呼び出したいコードを記述することでループ出力することができます。出力用の戻り値は以下になります。

term_id
カテゴリー ID
name
カテゴリー名
slug
カテゴリーのスラッグ
term_group
カテゴリーのグループ
term_taxonomy_id
カテゴリーのタクソノミー ID
taxonomy
タクソノミー名
description
カテゴリーの説明
parent
親カテゴリーの ID
count
カテゴリーに登録されている投稿の数
object_id
オブジェクト ID

以上を利用して、divタグを使って投稿数を表示したカテゴリリストを出力したい場合のサンプルコードが以下になります。(aタグ内を見やすくするために改行しています。)

<?php foreach( ( get_the_category() ) as $category ):?>
<div>
  <a href="<?php echo get_permalink();?>">
    <?php echo $category->name;?>(<?php echo $category->count;?>)
  </a>
</div>
<?php endforeach;?>

まとめ

get_categoriesはカテゴリリストに表示したい項目を編集したいときや、見た目をサイトに合わせて編集したいときに有用です。カスタム投稿タイプへの転用も簡単ですので、wordpress制作に利用してみてください。

SHARE

この記事の筆者

Web&Soundクリエイター 田村 培修

Web&Soundクリエイター 田村 培修

楽器とパソコンのキーボードを使い分ける当社のマルチクリエイター。e-sportsに興味津々であれこれ情報を収集中。

WEBSITE DESIGN REQUEST

ホームページ制作・リニューアルの
ご相談はお気軽に

TEL 06-6537-9941 平日 9:00〜19:00

〒550-0012 大阪府大阪市西区立売堀2-5−41

ホームページ制作を相談する