web-dev-qa-db-fra.com

Comment changer/réécrire l'URL du mot de passe perdu?

J'ai utilisé iThemes Security (anciennement Better WP Security) pour masquer la fonctionnalité d'arrière-plan permettant de modifier l'URL de connexion en/connexion. Toutefois, un clic sur le lien du mot de passe perdu /wp-login.php?action=lostpassword génère désormais un 404

Aller manuellement à/se connecter? Action = lostpassword fonctionne.

Je suis tombé sur le code suivant ci-dessous qui est supposé faire le changement mais après quelques tests cela ne semble pas fonctionner

//*******************************************************
//Function to change to lost password url
//********************************************************
add_filter('site_url',  'wplogin_filter', 10, 3);
function wplogin_filter( $url, $path, $orig_scheme ){
    $old  = array( "/(wp-login\.php)/");
    $new  = array( "signin/"); //this can be change to login or whatever or may remain there
    return preg_replace( $old, $new, $url, 1);
}

ajouter à .htaccess

RewriteRule ^signin$ wp-login.php

Comment puis-je modifier le code ci-dessus afin de changer l'URL du mot de passe perdu?

1
Oudin

la solution est simple, il existe un filtre pour changer l'URL du mot de passe perdu. Essaye ça :

add_filter( 'lostpassword_url',  'wdm_lostpassword_url', 10, 0 );
function wdm_lostpassword_url() {
    return site_url('/signin?action=lostpassword');
}
9
WisdmLabs