# redirect_post()

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

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

## Сигнатура

```php
redirect_post( int $post_id )
```

## Описание

Перенаправляет на предыдущую страницу.

## Параметры

- `$post_id` `int` — необязательный. Идентификатор записи.

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

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

```php
function redirect_post( $post_id = 0 ) {
	if ( isset( $_POST['save'] ) || isset( $_POST['publish'] ) ) {
		$status = get_post_status( $post_id );

		switch ( $status ) {
			case 'pending':
				$message = 8;
				break;
			case 'future':
				$message = 9;
				break;
			case 'draft':
				$message = 10;
				break;
			default:
				$message = isset( $_POST['publish'] ) ? 6 : 1;
				break;
		}

		$location = add_query_arg( 'message', $message, get_edit_post_link( $post_id, 'url' ) );
	} elseif ( isset( $_POST['addmeta'] ) && $_POST['addmeta'] ) {
		$location = add_query_arg( 'message', 2, wp_get_referer() );
		$location = explode( '#', $location );
		$location = $location[0] . '#postcustom';
	} elseif ( isset( $_POST['deletemeta'] ) && $_POST['deletemeta'] ) {
		$location = add_query_arg( 'message', 3, wp_get_referer() );
		$location = explode( '#', $location );
		$location = $location[0] . '#postcustom';
	} else {
		$location = add_query_arg( 'message', 4, get_edit_post_link( $post_id, 'url' ) );
	}

	/**
	 * Filters the post redirect destination URL.
	 *
	 * @since 2.9.0
	 *
	 * @param string $location The destination URL.
	 * @param int    $post_id  The post ID.
	 */
	wp_redirect( apply_filters( 'redirect_post_location', $location, $post_id ) );
	exit;
}
```

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

- 2.7.0 — Introduced.

## Связанные

Использует: [`wp_redirect`](https://chugunov.pro/api-wordpress/functions/wp_redirect/), [`wp_get_referer`](https://chugunov.pro/api-wordpress/functions/wp_get_referer/), [`get_edit_post_link`](https://chugunov.pro/api-wordpress/functions/get_edit_post_link/), [`get_post_status`](https://chugunov.pro/api-wordpress/functions/get_post_status/), [`add_query_arg`](https://chugunov.pro/api-wordpress/functions/add_query_arg/), [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/).

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