WordPressで閲覧している固定ページが親・子・孫ページのいずれかを判別する方法

WordPressで閲覧している固定ページが親・子・孫ページのいずれかを判別する方法

WordPressで閲覧している固定ページが親・子・孫ページのいずれかを判別する方法

WordPressの固定ページでは親子関係を設定することができます。今回は、その親子関係をテーマ内で判別する方法をご紹介したいと思います。

閲覧している固定ページが親ページか子ページかを判別する方法

「$post->post_parent」を使うと親ページを判別することができます。閲覧しているページが親か子かで条件分岐させるには、以下のように記述します。

<?php
  if($post->post_parent == 0){ //親ページの判別
    echo '親ページです';
  } else {
    echo '子ページです';
  }
?>

親ページの場合は「親ページです」、子ページの場合は「子ページです」というテキストが出力されます。

孫ページまで存在している場合の判別法

親子だけでなく、孫ページまで存在している場合は、以下のように判別します。

<?php
  if($post->post_parent == 0){ //親ページの判別
    echo '親ページです';
  } else {
    $args = array(
      'post_parent'=> $post->ID,
      'post_type' => 'page'
    );
    if(count(get_children($args)) > 0){ //子ページの判別
      echo '子ページです';
    } else {
      echo '孫ページです';
    }
  }
?>

まず「$post->post_parent」で親ページを判別し、「get_children」で子ページを判別します。親でも子でもない場合は、孫ページという条件分岐になります。

あとがき

ページの属性によって出力を変更したい場合に、ぜひ参考にしていただければと思います。

この記事が気に入ったら
いいね!してね♪

Twitter で

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です