WordPress 固定ページで指定したIDのページとその子ページを判別する方法

WordPress の固定ページで指定したページIDとその子ページを判別する方法を紹介します。
例えば、指定したページとその子ページのヘッダーを変更したい場合に便利な方法です。

  1. 指定したページIDとその子ページを判別する方法

指定したページIDとその子ページを判別する方法

指定したページIDとその子ページを判別するには、現在表示しているページのIDを取得して、判別対象のページIDと比較して判別します。
例えば、page.php の冒頭で、指定したページIDとその子ページの時だけ header を切り替える場合は、次のコードを追加します。

<?php // 指定したページIDとその子ページを判別
$page_id = get_the_ID();
if ($page_id == 999 || in_array(999, get_ancestors($page_id, 'page'))) { // 指定したページ、又はその子ページの場合
get_header('header-999');
} else { // それ以外のページ
get_header();
}
?>

ページID 999 と get_header や header-999 の値は適宜変更を加えてご利用ください。

まとめ

WordPress の固定ページで指定したIDのページとその子ページを判別する方法を紹介しました。