You can use get_current_screen()
to check on which page you are then make a redirect to specific admin page.
get_current_screen()
return the screen object like
WP_Screen Object
(
[action] =>
[base] => dashboard
[columns:WP_Screen:private] => 0
[id] => dashboard
[in_admin:protected] => site
[is_network] =>
[is_user] =>
[parent_base] =>
[parent_file] =>
[post_type] =>
[taxonomy] =>
[_help_tabs:WP_Screen:private] => Array
(
)
[_help_sidebar:WP_Screen:private] =>
[_screen_reader_content:WP_Screen:private] => Array
(
)
[_options:WP_Screen:private] => Array
(
)
[_show_screen_options:WP_Screen:private] =>
[_screen_settings:WP_Screen:private] =>
)
You can use base
key to identify the page base!
Example:-
add_action('current_screen', 'wpse_225416_redirect_admin_page');
/**
* Redirect specific admin page
*/
function wpse_225416_redirect_admin_page() {
$my_current_screen = get_current_screen();
if (isset($my_current_screen->base) && $my_current_screen->base == 'about') {
wp_redirect(admin_url());
exit();
}
}
Use current_screen
hook because before that get_current_screen()
will return nothing.