# get_post()

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

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

## Сигнатура

```php
get_post( int|object|null $post = null, string $output = OBJECT, string $filter = 'raw' ): WP_Post|array|null
```

## Описание

См. sanitize_post() для необязательных значений $filter. Кроме того, параметр $post должен передаваться в виде переменной, поскольку передаётся по ссылке.

## Параметры

- `$post` `int|object|null` — необязательный, по умолчанию `null`. Идентификатор записи или объект записи. null, false, 0 и другие ложные значения PHP возвращают текущую глобальную запись внутри цикла. Числовой корректный идентификатор записи, указывающий на несуществующую запись, возвращает null. По умолчанию — глобальная переменная $post.
- `$output` `string` — необязательный, по умолчанию `OBJECT`. Требуемый тип возвращаемого значения. Одно из OBJECT, ARRAY_A или ARRAY_N, что соответствует объекту WP_Post, ассоциативному массиву или числовому массиву соответственно.
- `$filter` `string` — необязательный, по умолчанию `'raw'`. Тип применяемого фильтра. Принимает 'raw', 'edit', 'db' или 'display'. По умолчанию 'raw'.

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

`WP_Post|array|null` — WP_Post

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

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

```php
function get_post( $post = null, $output = OBJECT, $filter = 'raw' ) {
	if ( empty( $post ) && isset( $GLOBALS['post'] ) ) {
		$post = $GLOBALS['post'];
	}

	if ( $post instanceof WP_Post ) {
		$_post = $post;
	} elseif ( is_object( $post ) ) {
		if ( empty( $post->filter ) ) {
			$_post = sanitize_post( $post, 'raw' );
			$_post = new WP_Post( $_post );
		} elseif ( 'raw' === $post->filter ) {
			$_post = new WP_Post( $post );
		} elseif ( isset( $post->ID ) ) {
			$_post = WP_Post::get_instance( $post->ID );
		} else {
			$_post = null;
		}
	} else {
		$_post = WP_Post::get_instance( $post );
	}

	if ( ! $_post ) {
		return null;
	}

	$_post = $_post->filter( $filter );

	if ( ARRAY_A === $output ) {
		return $_post->to_array();
	} elseif ( ARRAY_N === $output ) {
		return array_values( $_post->to_array() );
	}

	return $_post;
}
```

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

- 1.5.1 — Introduced.

## Связанные

Использует: `WP_Post::__construct`, `WP_Post::get_instance`, `WP_Post`, [`sanitize_post`](https://chugunov.pro/api-wordpress/functions/sanitize_post/).
Используется в: `WP_REST_Attachments_Controller::prepare_links`, [`_block_bindings_post_data_get_value`](https://chugunov.pro/api-wordpress/functions/_block_bindings_post_data_get_value/), [`is_post_embeddable`](https://chugunov.pro/api-wordpress/functions/is_post_embeddable/), [`apply_block_hooks_to_content_from_post_object`](https://chugunov.pro/api-wordpress/functions/apply_block_hooks_to_content_from_post_object/), [`apply_block_hooks_to_content`](https://chugunov.pro/api-wordpress/functions/apply_block_hooks_to_content/), [`update_ignored_hooked_blocks_postmeta`](https://chugunov.pro/api-wordpress/functions/update_ignored_hooked_blocks_postmeta/), [`_block_bindings_post_meta_get_value`](https://chugunov.pro/api-wordpress/functions/_block_bindings_post_meta_get_value/), [`inject_ignored_hooked_blocks_metadata_attributes`](https://chugunov.pro/api-wordpress/functions/inject_ignored_hooked_blocks_metadata_attributes/), `WP_REST_Font_Faces_Controller::get_parent_font_family_post`, [`wp_copy_parent_attachment_properties`](https://chugunov.pro/api-wordpress/functions/wp_copy_parent_attachment_properties/), `WP_REST_Template_Revisions_Controller::get_parent`, [`_wp_preview_meta_filter`](https://chugunov.pro/api-wordpress/functions/_wp_preview_meta_filter/), [`_get_comment_reply_id`](https://chugunov.pro/api-wordpress/functions/_get_comment_reply_id/), [`wp_get_latest_revision_id_and_total_count`](https://chugunov.pro/api-wordpress/functions/wp_get_latest_revision_id_and_total_count/), [`wp_get_post_revisions_url`](https://chugunov.pro/api-wordpress/functions/wp_get_post_revisions_url/), `WP_Theme_JSON_Resolver::get_user_data_from_wp_global_styles`, `WP_REST_Menu_Items_Controller::create_item`, `WP_REST_Menu_Items_Controller::update_item`, `WP_REST_Menu_Items_Controller::delete_item`, `WP_REST_Menu_Items_Controller::prepare_item_for_database`, `WP_REST_Global_Styles_Controller::get_post`, `WP_REST_Global_Styles_Controller::prepare_item_for_database`, [`wp_set_unique_slug_on_create_template_part`](https://chugunov.pro/api-wordpress/functions/wp_set_unique_slug_on_create_template_part/), [`_resolve_template_for_new_post`](https://chugunov.pro/api-wordpress/functions/_resolve_template_for_new_post/), `WP_Query`, [`_build_block_template_result_from_post`](https://chugunov.pro/api-wordpress/functions/_build_block_template_result_from_post/), `WP_REST_Templates_Controller::update_item`, `WP_REST_Templates_Controller::create_item`, [`get_adjacent_image_link`](https://chugunov.pro/api-wordpress/functions/get_adjacent_image_link/), `WP_REST_Posts_Controller::check_password_required`, [`wp_force_plain_post_permalink`](https://chugunov.pro/api-wordpress/functions/wp_force_plain_post_permalink/), [`is_post_publicly_viewable`](https://chugunov.pro/api-wordpress/functions/is_post_publicly_viewable/), [`get_post_parent`](https://chugunov.pro/api-wordpress/functions/get_post_parent/), [`wp_after_insert_post`](https://chugunov.pro/api-wordpress/functions/wp_after_insert_post/), `WP_REST_Attachments_Controller::edit_media_item`, [`rest_get_route_for_post`](https://chugunov.pro/api-wordpress/functions/rest_get_route_for_post/), [`wp_get_user_request`](https://chugunov.pro/api-wordpress/functions/wp_get_user_request/), `WP_REST_Attachments_Controller::insert_attachment`, `WP_REST_Attachments_Controller::post_process_item`, [`get_post_datetime`](https://chugunov.pro/api-wordpress/functions/get_post_datetime/).

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