WEB制作者向け無料テーマ「Arkhe」をリリースしました

カテゴリ一覧を表示するwp_list_categoriesで投稿数のカウントをaタグの外ではなく内側に出力する方法

カテゴリ一覧を出力する時、wp_list_categories()という関数で'show_count' パラメータを true にすると投稿数を表示できますが、デフォルトではリンク(aタグ)の外に出力されてしまい、色々と不便。

とうことで、今回はこの投稿数をリンクの中、つまりaタグの内側に出力させる方法についてメモしていこうと思います。

目次

functions.phpでwp_list_categories関数をカスタマイズする

以下のコードを functions.php の任意の場所に記述してください。

wp_list_categoriesをカスタマイズするコード

function my_list_categories( $output, $args ) {
  $output = preg_replace('/</a>s*((d+))/',' ($1)',$output);
  return $output;
}
add_filter( 'wp_list_categories', 'my_list_categories', 10, 2 );

my_list_categories()という関数を作成し(名前は任意です)、wp_list_categoriesアクションにフックさせます。

正規表現を用いて、</a>(投稿数数)というHTML文字列を(投稿数)</a>に置き換えています。

get_categories関数やWP_Term_Queryを使用する

functions.php をいじるのは怖いなぁという方は、カテゴリ一覧の出力をwp_list_categories()以外の方法でやってしまいましょう。

get_categories()という関数や、WP_Term_Queryというのを使用すると、簡単に投稿数をaタグ何にしてカテゴリ一覧を表示できます。

これらの使用方法については以下の記事にまとめていますので、是非ご覧ください。

あわせて読みたい
WordPressでカテゴリー・タグ・タクソノミーのタームを全取得して一覧表示する方法【WP_Term_Query / ge... 今回は、カテゴリー・タグ・カスタムタクソノミーのターム情報を全て取得する方法をまとめていこうと思います。 サイドバーやフッターに、「カテゴリー一覧」や「タグ一...

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次