Как проверить, является ли страница прямой или косвенной дочерней страницей другой страницы в Wordpress?
У меня есть страница с идентификатором 63. У этой страницы есть несколько дочерних страниц, и каждая из дочерних страниц снова имеет подстраницы. Короче говоря, страница с идентификатором 63 является супер-родителем для всех страниц.
Я хочу проверить, является ли текущая страница дочерней страницы с идентификатором 63. Либо прямой ребенок / ребенок ребенка до любого уровня.
Я могу проверить, является ли страница дочерней страницы 63. Но не в состоянии проверить то же самое для дочерних дочерних страниц.
Я есть использование $post->post_parent == 63
для проверки того, является ли страница дочерней по отношению к странице 63.
Как я могу проверить то же самое для всех уровней страниц ?
2 ответа:
Вы можете использовать get_post_ancestors () следующим образом:
$parents = get_post_ancestors($post); foreach($parents as $page_id){ if($page_id == ID of specific parent page){ // Do something break; //Match found, no need to keep checking } }