функция 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.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.