技術メモ。
WordPressのテーマ「SWELL」を使っています。サイドバーにはカテゴリの一覧を表示するウィジェットが配置されているのですが
カテゴリA
カテゴリB
カテゴリC
とシンプルな表示。
これはこれでスマートでいいのですが
カテゴリA(10)
カテゴリB(3)
カテゴリC(50)
といった感じに「カテゴリごとの件数」を表示したい。
SWELLは敢えてシンプルな「件数なし表示」がデフォルトになっているだけで、ウィジェットで設定できるはず、と設定画面を覗いてみたのですが。
ウィジェットの内容が、わたしの使ってきたほかのテーマとは少々違っていました。
ウィジェットの中身は以下のHTMLのみであり「件数を表示するといった設定項目」は見当たりませんでした。
<!-- wp:group --><div class="wp-block-group"><!-- wp:heading --><h2>カテゴリー</h2><!-- /wp:heading --><!-- wp:categories /--></div><!-- /wp:group -->
上記のタグたちは、最近のWordPressで使えるようになったものなのかな?
パラメータがあるのではないかと思ってググったところ、良さそうな記事を発見。
記事を参考にして解決できました。
まとめ
変更内容(カスタマイズ内容)
以下のコードを書き加える。
{"showPostCounts":true}
変更前
<!-- wp:group --><div class="wp-block-group"><!-- wp:heading --><h2>カテゴリー</h2><!-- /wp:heading --><!-- wp:categories /--></div><!-- /wp:group -->
変更後
<!-- wp:group --><div class="wp-block-group"><!-- wp:heading --><h2>カテゴリー</h2><!-- /wp:heading --><!-- wp:categories {"showPostCounts":true} /--></div><!-- /wp:group -->
追記:親子関係のカテゴリはフラットに並べず階層表示したい
上記の修正で解決解決…と思いきや別の課題が。
カテゴリAの下にカテゴリA1,カテゴリA2をつくったのですが、
カテゴリA
カテゴリA1
カテゴリA2
カテゴリB
カテゴリC
とフラットに表示されてしまいました。
希望としては
カテゴリA
└カテゴリA1
└カテゴリA2
カテゴリB
カテゴリC
と階層構造を表現してほしかったのに…。
パラメータは用意されているはず。
と先の関連リンクのページを調べてみた所・・・ありました。
"showHierarchy":true
がそれでした。
最終的にはこのように。
<!-- wp:group --><div class="wp-block-group"><!-- wp:heading --><h2>カテゴリー</h2><!-- /wp:heading --><!-- wp:categories {"showHierarchy":true, "showPostCounts":true} /--></div><!-- /wp:group -->
カテゴリごとの記事数が表示され、親子関係のあるカテゴリの場合は階層を表現した形で表示してくれるようにできました。
コメント