WordPress – 親カテゴリーIDと階層を指定し、リスト表示させる

要件

管理画面で”親カテゴリーのID”と”階層”を入力し、カテゴリーリストを表示させたい。

例:
カテゴリーID…1,4,5
階層…2
と入力すると、

  • カテゴリー1
  • – カテゴリー1の子1
  • – カテゴリー1の子2
  • カテゴリー4
  • カテゴリー5

みたいに表示される感じにしたい。




問題

最初は、”wp_list_categories()“を使ってこんな感じでぱぱっとできると思っていました。値の入力はテーマカスタマイザーでの手入力です。

ところが、子カテゴリーが表示されない…

どうも、’inculde’でカテゴリーIDを指定すると、階層を有効にしても、指定したIDのカテゴリーしか表示されないようです。子カテゴリーは自動で出てこない。

解決

先に、指定した親カテゴリーIDの子孫を全部取得し、一家全員のIDをincludeに入れてやる作戦に変更。

これで、要望通り動くようになった。

もうちょっとすっきり書けないかなぁ…

イチオシ!書籍

シェアしてくだちい

フォローしてくだちい