WordPress Redirect nach dem Zurücksetzen des Passworts

Ich würde gerne zu get_bloginfo('url'); redirect können get_bloginfo('url'); nach dem Zurücksetzen des Passworts.

Aber ich kann für das Leben von mir keine einfache Antwort oder function finden, um dies zu tun.

Weiß jemand, ob das möglich ist?

Danke Josh

Solutions Collecting From Web of "WordPress Redirect nach dem Zurücksetzen des Passworts"

Hier ist eine einfache Lösung. login_headerurl in login_headerurl . Vielleicht gibt es einen besseren Haken dafür, aber es funktioniert, stell das in deine functions.php:

 function wpse_lost_password_redirect() { // Check if have submitted $confirm = ( isset($_GET['checkemail'] ) ? $_GET['checkemail'] : '' ); if( $confirm ) { wp_redirect( home_url() ); exit; } } add_action('login_headerurl', 'wpse_lost_password_redirect'); 

Was es tut, läuft es auf login_headerurl und prüft auf den GET-Parameter “checkedmail”, den Sie erhalten, nachdem Sie einen gültigen Benutzernamen oder eine gültige E-Mail-Adresse eingegeben haben. Dann leite ich um, indem ich die awsome function wp_redirect zur home_url verwende .

UPDATE nach dem Kommentar

Wenn Sie den Benutzer redirect wollen, nachdem Sie ein neues Passwort gesendet haben, brauchen Sie nur den Haken password_reset zu verwenden. Hier ein Beispiel:

 function wpse_lost_password_redirect() { wp_redirect( home_url() ); exit; } add_action('after_password_reset', 'wpse_lost_password_redirect'); 

Die “richtige” Antwort funktioniert hier nicht, da die Aktion “password_reset” ausgetriggers wird, bevor das Passwort zurückgesetzt wird.

Ich habe die erste Antwort vor dem Update geändert, um zu arbeiten.

 function wpse_lost_password_redirect() { // Check if have submitted $confirm = ( isset($_GET['action'] ) && $_GET['action'] == resetpass ); if( $confirm ) { wp_redirect( home_url() ); exit; } } add_action('login_headerurl', 'wpse_lost_password_redirect'); 

Edit: Ich hatte nicht genug Rep zu kommentieren, also poste ich dies als eine neue Antwort.

Ich kann nicht sehen, wie die “UPDATE After Comment” Antwort funktioniert.

Die Dokumentation für den Haken “password_reset” lautet “Brände vor dem Zurücksetzen des Benutzerkennworts”.
Wenn Sie redirect, wird das Passwort nicht geändert.

Da ich ein ähnliches Bedürfnis hatte, entwickelte ich meine Lösung für das Problem. Wir antworten immer noch auf den “password reset” -Hook, aber anstatt die Umleitung sofort durchzuführen, fügen wir einen Hook für den “login_url” -Filter hinzu. In diesem Filter fügen wir die Umleitungen zur Startseite hinzu, nachdem der Benutzer sich angemeldet hat.

  add_action( "password_reset", "rngs_password_reset", 10, 2 ); /** * Implement "password_reset" for RNGS * * After a password reset has been performed we want the Log in link to redirect the user to the home url. * When we see this action being run we know that we should be filtering "login_url" to add the redirect the home page. * We don't filter "login_url" any other time. * * @param WP_User $user - the user object * @param string $new_pass - the new password * */ function rngs_password_reset( $user, $new_pass ) { add_filter( "login_url", "rngs_login_url", 10, 2 ); } /** * Implement "login_url" filter for RNGS * * Redirect the user to the home page after logging in * * @TODO - make this an option field that controls where the logged in user goes * @TODO - dependent upon role? * * @param string $login_url - the original login_url which is not expected to include "redirect_to" or "reauth" * @param string $redirect - expected to be null/blank */ function rngs_login_url( $login_url, $redirect ) { $home_redirect = home_url(); $login_url = add_query_arg('redirect_to', urlencode( $home_redirect ), $login_url); return( $login_url ); } 

Vielleicht fehlt mir etwas in der Frage, aber stimmt etwas nicht mit der Verwendung des lostpassword_redirect Filters?

 add_filter( 'lostpassword_redirect', 'my_redirect_home' ); function my_redirect_home( $lostpassword_redirect ) { return home_url(); } 

Mehr hier: https://codex.wordpress.org/Plugin_API/Filter_Reference/lostpassword_redirect

Rediret to ist eine WordPress-function, für die Sie kein Plugin erstellen müssen, fügen Sie einfach & redirect_to = die URL hinzu und es wird funktionieren. Beispiel:

 echo ''Forgot Password'';