# get_page_children()

URL: https://chugunov.pro/api-wordpress/functions/get_page_children/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 1.5.1.

## Сигнатура

```php
get_page_children( int $page_id, WP_Post[] $pages ): WP_Post[]
```

## Описание

Потомки определяются по массиву $pages, переданному в функцию. Запросы к базе данных не выполняются.

## Параметры

- `$page_id` `int` — обязательный. ID страницы.
- `$pages` `WP_Post[]` — обязательный. Список объектов страниц, среди которых нужно определить потомков.

## Возвращаемое значение

`WP_Post[]`

## Исходный код

Файл: `wp-includes/post.php:6248`

```php
function get_page_children( $page_id, $pages ) {
	// Build a hash of ID -> children.
	$children = array();
	foreach ( (array) $pages as $page ) {
		$children[ (int) $page->post_parent ][] = $page;
	}

	$page_list = array();

	// Start the search by looking at immediate children.
	if ( isset( $children[ $page_id ] ) ) {
		// Always start at the end of the stack in order to preserve original `$pages` order.
		$to_look = array_reverse( $children[ $page_id ] );

		while ( $to_look ) {
			$p           = array_pop( $to_look );
			$page_list[] = $p;
			if ( isset( $children[ $p->ID ] ) ) {
				foreach ( array_reverse( $children[ $p->ID ] ) as $child ) {
					// Append to the `$to_look` stack to descend the tree.
					$to_look[] = $child;
				}
			}
		}
	}

	return $page_list;
}
```

## История изменений

- 1.5.1 — Introduced.

## Связанные

Используется в: [`get_pages`](https://chugunov.pro/api-wordpress/functions/get_pages/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/get_page_children/
