ロボット研究開発、ソフトウェア開発、コンテンツ制作配信

WordPress カテゴリー 投稿数を表示する

ブログの記事も溜まってきたので、
カテゴリーの投稿数を表示させるようにしました。
その方法を備忘録としてまとめておきます。

スポンサーリンク

WordPressのウィジェットの設定

WordPress管理画面から「外観」⇒「ウィジェット」を開きます。
スクリーンショット 2016-03-24 12.01.22

サイドバーのカテゴリを選択し、投稿数を表示にチェックを入れて保存を押します。
スクリーンショット 2016-03-24 12.01.49

さて、投稿数が表示されているかサイトを表示して確認してみます。
投稿数が改行されて表示されてしまっているようです。
スクリーンショット 2016-03-24 12.03.32

改行を入らないようにするには、以下の2つの方法がありました。
・方法1:CSSスタイルの変更
・方法2:投稿数をリンクタグ内に入れる

方法1:CSSスタイルの変更

私の場合、改行が入る原因は、サイドメニューのdisplayプロパティがblock指定されていたためです。
style.cssを以下のように修正しました。

.blogmenu li a {display: inline-block;
                padding: 10px 5px;
                color: #666666;
                font-size: 14px;
                text-decoration: none}

displayプロパティをinline-blockに変更することで改行が入らず表示できました。

スクリーンショット 2016-03-24 12.05.20

方法2:投稿数をリンクタグ内に入れる

上記の方法でも良かったのですが、投稿数だけ浮いて見えるので、
リンクタグ内に入れる方法を調べました。
以下の処理をfunctions.phpに記載することで、
リンクタグ内に投稿数が入ります。

// カテゴリの投稿数をaタグの中に
add_filter( 'wp_list_categories', 'my_list_categories', 10, 2 );
function my_list_categories( $output, $args ) {
  $output = preg_replace('/<\/a>\s*\((\d+)\)/',' ($1)</a>',$output);
  return $output;
}

これで、投稿数がリンク内に入りました。
スクリーンショット 2016-03-24 12.09.22

ちなみに、アーカイブ(年月表示)の投稿数をリンクタグ内に入れるには
以下のコードをfunctions.phpに記載すればOKです。

// アーカイブの投稿数をaタグの中に
add_filter( 'get_archives_link', 'my_archives_link' );
function my_archives_link( $output ) {
  $output = preg_replace('/<\/a>\s*(&nbsp;)\((\d+)\)/',' ($2)</a>',$output);
  return $output;
}

まとめ

以上、カテゴリーの投稿数を表示する方法でした。
参考になれば幸いです。

関連記事(一部広告含む)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


ページトップボタン