WordPressで特定の親ページの子にあたるページを判別する方法

WordPressで特定の親ページの子にあたるページを判別する方法

WordPressで特定の親ページの子にあたるページを判別する方法

WordPressで特定の親ページの配下にある子ページかどうかを判別する方法をご紹介いたします。

例えば、aboutという親ページの配下にある子ページにのみ、aboutに関する内容を表示したい、といった時に役立ちます。

特定の親ページの配下にある子ページかどうかを判別する方法

まず、適用しているテーマのfunctions.phpに以下を追記します。

function is_parent_name() {
  global $post;
  if ($post->post_parent) {
    $post_data = get_post($post->post_parent);
    return $post_data->post_name;
  }
}

子ページを判別したい箇所に、以下のようなコードを記述します。「about」の部分は、親ページのスラッグを指定してください。

<?php if(is_parent_name() === 'about'): ?>
  aboutの配下だった場合の内容
<?php else: ?>
  aboutの配下ではない場合の内容
<?php endif; ?>

あとがき

特定の親ページの配下にある子ページに、共通のパーツを表示するといったことは結構あるあるだと思うので、覚えておくと役立ちますね。

単純に、親ページなのか子ページなのかを判別したい時は、「WordPressで閲覧している固定ページが親・子・孫ページのいずれかを判別する方法」をご参照ください。

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

Twitter で

コメントを残す

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