孫カテゴリ対応しました
レモンブライトはコスモスの一種ですが、コスモスにカテゴライズするのはちょっと違うような気がして、コスモスの下にレモンブライトカテゴリを作成しました。
本当なら、
花>コスモス>キバナコスモス>レモンブライト
が正しいのだけど、キバナコスモスは割愛で。
具体的には、右のサイドメニューの「撮影カテゴリ」について、孫カテゴリ対応しました。
やったこと。
(1) コスモスの下に、レモンブライトカテゴリを作成。
(2) 撮影カテゴリに1階層追加。
(3) 記事(撮影録)のないカテゴリはリンクを外し、文字色を灰色に変更。
(1) コスモスの下に、レモンブライトカテゴリを作成。
これは、WordPressでカテゴリーに「レモンブライト」を追加して、親カテゴリに「コスモス」を設定することで実現。
(2) 撮影カテゴリに1階層追加。
今までのプログラムだと、子カテゴリ、孫カテゴリがすべて並んで表示されたため、やはり子カテゴリの下階層に孫カテゴリは表示したいよな、と思って、改善することに。
これは、
・子カテゴリ取得時に使用していた「get_term_children」を「get_terms」に変更
→子カテゴリだけ取得する(孫カテゴリは対象外とする)
・子カテゴリの子カテゴリ=孫カテゴリを取得する再帰処理を追加
・孫カテゴリがある時だけ、孫カテゴリを表示する
ということで実現。
ただ、関数を変えたら引数や後続の処理に調整が必要で……。
戻り値の形が変わったことに気づかず、時間がかかりました。
(3) 記事(撮影録)のないカテゴリはリンクを外し、文字色を灰色に変更。
今までのプログラムのままだと、記事(撮影録)がないカテゴリについても、カウント(記事数)「(0)」が表示され、リンクが張られ、リンク先はカテゴリのみで記事のないページが表示される、という状態だったので、改善することに。
これは、プログラム内で条件分岐を追加して、カウントが「0」(記事なし)の場合に記事数を表示せず、またリンクを外すことで実現。
リンクを外したところ、カテゴリの表示色が黒になって目立ってたので、スタイルシート設定で灰色にすることにしました。
たぶん、同じ再帰処理を追加すれば、ひ孫カテゴリもできそうで、
花>コスモス>キバナコスモス>レモンブライト
という階層も実現できると思うのだけど、ほかの花はそんなに階層がないので、やっぱりキバナコスモスは割愛。




