redirect_post_location
Фільтрує кінцеву адресу УРЛ, на яку WP перенаправляє користувача при збереженні, публікації або оновленні запису (поста).
Приклад: під час створення посту УРЛ має вигляд: /wp-admin/post-new.php
. Після того, як ми натиснемо кнопку “Зберегти” або “Опублікувати” УРЛ: wp-admin/post.php?post=3061&action=edit&message=10
. Саме це новий УРЛ ми можемо змінити, використовуючи фільтр redirect_post_location
.
Використання
function filter_function_name_11( $location, $post_id ) { // Фільтр... return $location; } add_filter( 'redirect_post_location', 'filter_function_name_11', 10, 2);
-
$location
(рядок) - УРЛ, на який буде перенаправлений користувач.
-
$post_id
(число) - ID посту, який обробляється зараз.
Приклади
#1 Перенаправлення на список записів під час створення запису
Припустимо, при створенні або оновленні запису, нам потрібно, щоб користувача перенаправило на сторінку адмін-панелі зі списком усіх записів, а не на ту саму сторінку редагування запису. Для цього скористаємося фільтром redirect_post_location
та функцією admin_url() :
/** * Перенаправити на edit.php при збереженні чи публікації посту. */ function redirect_to_list_after_publish_post( $location ) { if ( isset( $_POST['save'] ) || isset( $_POST['publish'] ) ) return admin_url("edit.php"); // посилання буде таким: http://example.com/wp-admin/edit.php return $location; } add_filter( 'redirect_post_location', 'redirect_to_list_after_publish_post' );
список змін
З версії 2.9.0 | Введено. |
Де викликається хук
redirect_post_location
wp-admin/includes/post.php 2077
wp_redirect( apply_filters( 'redirect_post_location', $location, $post_id ) );
Де використовується хук у WordPress
Використання не знайдено.