функция
since 2.0.0
get_page_hierarchy()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
get_page_hierarchy( WP_Post[] $pages, int $page_id ): string[]
Описание
Использует вспомогательную структуру для хранения связей «родитель — потомки» и работает со сложностью O(N).
Оригинал (английский)
It uses auxiliary structure to hold parent-children relationships and runs in O(N) complexity
Параметры
$pages
WP_Post[]
обязательный
Массив записей (передаётся по ссылке).
$page_id
int
необязательный
ID родительской страницы. Значение по умолчанию 0.
Возвращаемое значение
string[]
Исходный код
wp-includes/post.php:6289
function get_page_hierarchy( &$pages, $page_id = 0 ) {
if ( empty( $pages ) ) {
return array();
}
$children = array();
foreach ( (array) $pages as $p ) {
$parent_id = (int) $p->post_parent;
$children[ $parent_id ][] = $p;
}
$result = array();
_page_traverse_name( $page_id, $children, $result );
return $result;
}
История изменений
| Версия | Описание |
|---|---|
| 2.0.0 | Introduced. |

