• 締切済み

wordpressのカテゴリ名表記について

wordpressのカテゴリ名表記について下記のようなカテゴリ構造の場合 (1)大カテ1>小カテ1>記事1 (2)大カテ2>小カテ2>記事2 投稿ページ内にカテゴリ名(小カテ名)を表記するために下記のようなソースを書きました。 <?php $cat_now = get_the_category(); $cat_now = $cat_now[0]; ----------------(A) $now_name = $cat_now->cat_name; echo $now_name; ?> しかし一部のページで大カテ名が表記されてしまいます。 そのため、上記のソースの(A)の箇所を $cat_now = $cat_now[1]; に変更すると問題のあったページは小カテ名が出るのですが、 今度はこれまで上手くいっていたページが大カテ名が出てしまいます。 これは何が問題なのでしょうか。 どなたかご教授頂ければ、非常に助かります。よろしくお願い致します。

みんなの回答

回答No.1

配列 $cat_now は、カテゴリーのID順(名前順だったかも)に格納されています。 親,子の順番に格納されているわけではありません。 $cat_now = get_the_category(); $cat_now = $cat_now[0]; if ($cat_now->category_parent==0) { $now_name = $cat_now[1]->cat_name; } else { $now_name = $cat_now[0]->cat_name; } echo $now_name;

関連するQ&A