WordPressテーマ作成時にカテゴリーをさくっと作成することが出来るwp_list_categories関数
というものがあります。今回はその使用方法について学んでいきましょう。
基本的な使用法
カテゴリを取得したい場所で以下の関数を実行するのみです。
wp_list_categories();
これだけでカテゴリーメニューを作成することが出来ました。とても便利ですね。しかしこれだけでは少し足りないこともあります。次からこのブログで利用しているカスタマイズを見てみましょう。
カスタマイズする
タイトルを消す
デフォルトではCategories(日本語版のWordPressをインストール済みであればカテゴリー)というタイトルが出ています。これは消してテーマ内で設定したかったのでまずはタイトルを消します。
<section id="widget-categories" class="widget-categories"> <h3><i class="glyphicon glyphicon-folder-open"></i>CATEGORIES</h3> <ul> <?php wp_list_categories('title_li='); ?> </ul> </section>
子カテゴリーまで表示する
カテゴリーに対して親子関係を設定していますが、あまり深いカテゴリーまでは対応したくない(カテゴリーがそこまで深くなるとおそらくカテゴリー設計が間違ってると思われる)ので、2階層までのカテゴリーまでしか表示しないようにします。
<section id="widget-categories" class="widget-categories"> <h3><i class="glyphicon glyphicon-folder-open"></i>CATEGORIES</h3> <ul> <?php wp_list_categories('title_li=&depth=2'); ?> </ul> </section>
2つ以上のオプションを設定するときは&
でつなげます。URLのパラメーターをつなげていくような感覚ですね。
総合投稿数を表示する
最後にタグの横に投稿数を表示しようと思います。
<section id="widget-categories" class="widget-categories"> <h3><i class="glyphicon glyphicon-folder-open"></i>CATEGORIES</h3> <ul> <?php wp_list_categories('title_li=&depth=2&show_count=1'); ?> </ul> </section>
特定のカテゴリーを除去
特定のカテゴリーのみ削除したいというときもあるかと思います。そのようなときはまずWordPress管理画面にいき、「投稿」→「カテゴリー」ページにいきます。
除去したいカテゴリーにカーソルをホバーするとURLが表示されます。その中の「tag_ID=?」と?の部分に数字が書いてあります。それが今回必要なIDです。
その数値を以下のようにオプションで指定します。
<section id="widget-categories" class="widget-categories"> <h3><i class="glyphicon glyphicon-folder-open"></i>CATEGORIES</h3> <ul> <?php wp_list_categories('title_li=&depth=2&show_count=1&exclude=10'); ?> </ul> </section>
もし除去したいカテゴリーが複数ある場合はカンマ区切りでつなげて指定します。
<section id="widget-categories" class="widget-categories"> <h3><i class="glyphicon glyphicon-folder-open"></i>CATEGORIES</h3> <ul> <?php wp_list_categories('title_li=&depth=2&show_count=1&exclude=10,11,12'); ?> </ul> </section>
これでメニューが出力されました。あとはCSS等で整えてあげれば完璧です!
参考リンク
その他にも様々なオプションがあります。一度目を通してみると、もしかすると簡単に設定出来る可能性があります。以下の公式ドキュメントをご覧ください。