Comment puis-je rediriger certaines pages de l'administrateur WordPress vers une autre page de l'administrateur?.
Par exemple, je ne veux jamais qu'un utilisateur voie wp-admin/about.php
devrait toujours être redirigé vers wp-admin/index.php
.
Il y a aussi quelques plugins qui redirigent vers une page d'accueil de plugins avec des promotions que je veux pouvoir vérifier si cette URL est ensuite redirigée vers cette URL.
Vous pouvez utiliser get_current_screen()
pour vérifier sur quelle page vous êtes, puis redirigez vers une page d’administrateur spécifique.
get_current_screen()
retourne l'objet d'écran comme
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] =>
)
Vous pouvez utiliser la touche base
pour identifier la base de la page!
Exemple:-
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();
}
}
Utilisez current_screen
hook car avant cette get_current_screen()
ne renverra rien.