WordPressメモ:特定の親カテゴリ以下の表示を切り替える。

カテゴリ1
カテゴリ2
├カテゴリ3
├カテゴリ4
└カテゴリ5

上記のようなカテゴリ構成の時、カテゴリ2およびそのサブカテゴリ(3~5)の表示を個別に切り替えたい場合。

<?php 
if (is_category(2)||is_category(3)||is_category(4)||is_category(5)) {
  ~処理~
}
?>

これで出来なくもありませんが、こうベタで書くと2のサブカテゴリを追加した場合に対応できません。

そこで、カテゴリを動的に取得して対応させる形にしましょう。

<?php 
$cat = get_the_category();              //今開いているカテゴリを取得
$parent_id = $cat[0]->category_parent;  //親カテゴリを取得
if (is_category(2)||$parent_id == 2) {
  ~処理~
}
?>

これでカテゴリ2と「カテゴリ2を親に持つカテゴリ」を抽出できます。

他のトップレベルカテゴリでも適用するならコピペして親を変えるだけです。

<?php 
$cat = get_the_category();
$parent_id = $cat[0]->category_parent;
if (is_category(2)||$parent_id == 2) {
  ~処理~
}
if (is_category(7)||$parent_id == 7) {
  ~処理~
}
if (is_category(10)||$parent_id == 10) {
  ~処理~
}
?>

ハックノートをフォローして
最新情報をチェックしよう

AWS構築サービスの全てをまとめた資料を公開中

ハックノート(TOWN株式会社)では、AWSの導入や構築支援を行っています。AWS導入メニューやサービス詳細、構成例や費用を掲載した資料をダウンロードできます。

AWSの新規導入やAWSへの移行を検討の際は、ぜひご参考ください。


APNコンサルティングパートナー

TOWN株式会社はAmazon公認コンサルティングパートナーです。