記事のループ内でカテゴリ情報を取得するには get_the_categories() を使用して、その記事が属するすべてのカテゴリ情報を取得することができる。
カテゴリ構造が以下のような場合
親カテゴリA --子カテa --子カテb --子カテc --子カテd
記事によって、子カテab、子カテbdのように、子カテゴリが様々で、属するカテゴリのリストを取得したい場合は:
$catList = ""; $catArr = get_the_category();//カテゴリ配列情報を取得 foreach ($catArr as $cat) { $pCat = $cat -> parent;//親カテゴリのIDを取得 $catNam = $cat -> name;//カテゴリの名前 if ($pCat != 親カテゴリAのID) continue;//現在のカテゴリの親が親カテゴリAでなかったらスキップ() $catList .= ($catList != "")? "、".$catNam:$catNam;//リストを読点(、)で区切る }
上記は、構造が規準となる親カテゴリから見て直下のカテゴリしか考慮していません。
さらに構造が深くなる場合は、さらに頭をひねる必要があります。