Tout savoir sur WordPress
Tutoriel WordPress

Rediriger vers la page d’édition d’un profil après l’ajout d’un membre

Cette astuce permet d’être rediriger vers la page d’édition d’un utilisateur après l’avoir ajouté à partir de l’administration de WordPress.

Après avoir ajouté un membre à partir de l’administration, WordPress nous redirige vers la liste des membres inscrits sur notre site.

A mon avis, cette redirection n’est pas pratique. En effet, on ne dispose pas de tous les champs lors de l’ajout d’un membre (ex : Informations de contact et A propos de l’utilisateur) et on souhaiterait certainement compléter le profil d’un membre sans devoir repasser par la liste complète des utilisateurs…

Pour être plus productif et gagner du temps, j’ai trouvé une astuce qui permet d’être redirigé vers la page d’édition du profil après avoir ajouté un membre.

Copier le code ci-dessous dans le fichier functions.php à la racine de votre thème :

[pastacode lang=”php” message=”” highlight=”” provider=”manual”]


add_action( 'admin_init', 'gkp_redirect_user_add' );
function gkp_redirect_user_add() {
	
    global $pagenow;
	
    if( $pagenow=='users.php' && isset( $_GET['usersearch'], $_GET['update'] ) && $_GET['update']=='add' ) {
		
	$username = $_GET['usersearch'];
	$user = get_user_by('login', $username);
	 	
	 if( isset( $user->ID ) )
	     wp_redirect( admin_url( 'user-edit.php?user_id=' . $user->ID ) );
    }
}

[/pastacode]

PS : testé et approuvé sans aucune faille de sécurité par Julio Potier =D

Cet article a été mis à jour il y a 4380 jours - Il n'est peut être plus à jour !

Article écrit par Jonathan B.

Jonathan est le co-fondateur de WP Media, startup connue pour être l’auteur de WP Rocket et Imagify. Il est aussi co-organisateur du WordCamp Lyon et Paris.

12 Commentaires

  1. @Yoann : Je pense que cela est tout à fait possible. Avec l’aide d’un User Meta, on pourrait savoir si le membre s’est déjà connecté ou non.

    Par exemple, lors de sa première connexion, on le renvoi vers la page de connexion et on ajoute un User Meta “first_connexion” (avec add_user_meta) avec une valeur comme 1 ou true.

    Ensuite, lors d’une prochaine connexion, on regarde si le User Meta first_connexion existe. Si c’est le cas, c’est que le membre s’est déjà connecté au moins une fois, dans le cas contraire on n’est plus obligé de le rediriger vers la page d’édition.

    Si mes explications ne sont pas claires, j’en ferai une nouvelle astuce dans quelques temps ^^

  2. Bonjour, comment rediriger vers une page choisis plutôt que la page d’édition du profil? Est’ ce possible?
    Merci

  3. @Gwen : Il suffit de modifier l’argument passé à la fonction admin_url() par la page que vous souhaitez.

  4. @Gwen : La page fait partie de l’administration ou pas ? Parce que si ce n’est pas une page de l’administration, il ne faut pas utiliser admin_url(), mais home_url() ^^

  5. Ok pour home_url(), c’est une page que j’ai crée ;-) Merci beaucoup pour ton savoir faire^^