Lorsque vous vous déconnectez de votre site WordPress, vous êtes immédiatement redirigé vers la page /wp-login.php
. Ce n’est pas forcément utile puisque vous ne souhaitez pas être connecté.
Nous allons donc ici modifier ce comportement afin d’être redirigé vers la page d’accueil de notre site plutôt que la page de connexion à WordPress.
Pour cela copiez-collez le code suivant dans le fichier functions.php
de votre thème enfant:
Et voilà, vous serez maintenant redirigé vers la page d’accueil de votre site quand vous vous déconnecterez.
Bien sûr, vous pouvez modifier la page vers laquelle renvoyer vos utilisateurs en ajoutant un paramètre à la fonction home_url()
(plus d’infos sur le codex ici). Par exemple, on peut rediriger vers la page blog :
Vous allez mettre en place ce snippet sur votre site ? Dites moi tout en commentaire 😉
PS : Merci à Maxime Culea pour ses retours en commentaire.
C’est effectivement utile de rediriger vers la homepage de son site après la déconnexion plutôt que de rester sur la page de connexion.
Néanmoins je préciserais que comme micro-optimisation il est utile d’ajouter le “trailing slash” : il est plus rapide au serveur de traiter home_url( ‘/’ ) que home_url() car le serveur comprend que l’on souhaite directement accéder à la racine du site.
Pour rediriger vers la page blog, j’encouragerais de plutôt faire un get_permalink() sur la page en question, car entrer en dur un slug implique que ce slug ne changera jamais.
De plus, pour x ou y raisons, on ne sait jamais, j’utiliserais wp_safe_redirect() à la place de wp_redirect(), car logiquement on est sur le même site.
PS: il semblerait y avoir une coquille, home_url(blog) devrait être une string.
Salut Maxime,
Merci pour tes retours, je viens de mettre à jour l’article. Je suis un peu moins d’accord sur le get_permalink(), si on redirige sur une page “importante” du site, il y a quasiment aucune chance pour que ça bouge. Mais après si c’est une autre page pourquoi pas (mais pourquoi rediriger vers ce genre de page aussi, je ne vois pas d’exemple).
PS : J’ai bien
home_url('blog')
de mon côté :/Bonjour, j’ai essayé de mettre en place le snippet mais ça plante le site : écran blanc.
Une erreur est donnée sur PHP Code Checker :
PHP Syntax Check: Parse error: syntax error, unexpected ‘/’ in your code on line 41
wp_safe_redirect( home_url(/) );
Bonjour, Enlève le ‘/’ pour voir?
Bonjour,
En supprimant “/” cela fonctionne correctement : home_url()
L’utilisation de home_url(/) ou home_url(“/”) provoque l’erreur suivante : ( ! ) Parse error: syntax error, unexpected ‘/’
N’est-ce pas devenu obsolète ?
Remplacer par $path (qui permet d’obtenir le chemin absolu du système de fichiers à la racine de l’installation de WordPress) me paraît plus optimal, qu’en pensez-vous ?
wp_safe_redirect( home_url() ); ou wp_safe_redirect( home_url($path) );
Bien à vous,
Patrick
Bonjour Patrick, je crois que tu as raison. Je vais essayer 😉
Super propre ! Merci
Bonjour, j’ai bien un thème enfant pour divi malheureusement quand je copie colle le text dans le fichier function.php et que j’enregistre, cela ne fonctionne pas. j’utilise un plug in pour ajouter un lien de déconnexion dans mon menu, peut être y’a t-il un conflit ou quelque chose du genre (le plug in est BAW login/logout menu).
Bonjour, il ne se passe rien quand tu ajoutes le code ?
Merci. Et y a-t-il moyen de rediriger non pas vers telle page précise mais vers la page d’où l’on s’est déconnecté ?
Je vous remercie d’avance.
Bonjour, oui mais ce serait un tout autre snippet 😉
Bonjour,
Petite question d’un néophyte : lorsqu’il n’y a pas d’utilisation de thème enfant, la redirection vers la page d’accueil fonctionne toujours ?
Cordialement
Bonjour, oui tout à fait 😉