Home>Guide>Disabilitare il cambio password in WordPress

Disabilitare il cambio password in WordPress


Disabilitare il cambio password in WordPress

Oltre alla classica possibilità di cambiare la password dalla pagina di modifica del proprio profilo, come impostazione predefinita, WordPress consente ai propri utenti di effettuare un ripristino della password di accesso al proprio account, fornendo l’indirizzo email sul quale verrà inviata una mail di conferma dell’azione richiesta.
Ma come puoi fare se desideri disabilitare queste opzioni e far sì che l’utente non abbia il controllo sulla modifica della propria password di accesso?

  • Leggi l'articolo, ti bastano solo 1 minuto, 19 secondi
    Sei di fretta? Scarica il PDF e consultalo quando vuoi!

Perché disabilitare il recupero della password su WordPress?

Ti starai chiedendo perché dovresti disabilitare la modifica della password in WordPress. Beh, le motivazioni potrebbero essere molteplici, ad esempio hai creato un account demo condiviso tra diversi utenti e se uno di loro modificasse la password, impedirebbe l’accesso anche agli altri.
Vediamo quindi come evitare che un utente WordPress possa modificare la password di accesso Come accennato, le aree in cui è possibile modificare la password del proprio account sono due: la pagina dedicata per il recupero della password smarrita e la pagina profilo del backend di WordPress.
Ma adesso passiamo ai fatti.


Rimuovere il reset della password in WordPress

Tutti gli utilizzatori di WordPress sanno che per accedere alla schermata di login per la parte admin è sufficiente aggiungere wp-login.php oppure wp-admin alla URL del proprio sito web WordPress. Da qui, ti è possibile, tramite l’apposito link, dirigerti alla pagina di reset della password:

ed effettuare la richiesta fornendo l’indirizzo email dell’account:

A questo punto, una mail di conferma verrà inviata all’indirizzo email inserito, ovviamente se esiste un account con quell’indirizzo.

Per evitare che ciò accada, basta modificare il file functions.php del tuo tema, che trovi in:

wp-content/themes/{nome_del_tema}/

che trovi nello spazio FTP del tuo sito ed inserire questa piccola porzione di codice:

// Disabilita il reset della password
add_filter ( 'allow_password_reset', '__return_false' );

Da questo momento, quando un utente tenterà di effettuare un reset della propria password, riceverà un messaggio di errore:


Disabilitare il cambio password dalla pagina di profilo

Il secondo step è prevenire che l’utente, una volta loggiato correttamente, possa modificare la password dell’account dalla pagina di modifica del proprio profilo:

Come fare? Semplice, è sufficiente modificare il file functions.php del tuo tema, che trovi in:

wp-content/themes/{nome_del_tema}/

che trovi nello spazio FTP del tuo sito ed inserire il codice:

add_filter( 'show_password_fields', '__return_false' );

In questo modo i campi del form che permettono la modifica della password vengono completamente rimossi:


Un piccolo approfondimento

Naturalmente, potresti voler eliminare la possibilità di modificare la password a tutti gli utenti, ma renderlo possibile agli amministratori del sito, senza la necessità di doverlo fare direttamente da database, come descritto nella guida:


Questo è possibile con una piccola modifica al precedente codice:

// Disabilita il cambio password per gli utenti non admin
add_filter( 'show_password_fields', function() {
    if ( is_admin() && ! current_user_can( 'administrator' ) ) {
        return false;
    }
    return true;
} );

Da questo momento, i campi che consentono di modificare la password dell’account nella pagina profilo nel backend di WordPress saranno visibili solamente agli account con privilegi di amministratori, mentre a tutti gli altri ruoli utente sarà preclusa la possibilità di modificare la password.



Ti è piaciuto questo articolo? Regalami un click per ripagarmi dello sforzo



Code4Life ti è stato utile? Sostienici con una donazione!

Dona con PayPal

Hai trovato interessante l’articolo? Allora ti consiglio di leggere:

Come disabilitare la ricerca in WordPress

Come disabilitare la ricerca in WordPress


Desideri rimuovere la funzionalità di ricerca sul tuo sito WordPress? Ecco poche righe per una risoluzione semplice ed efficace.

Come creare un menu tabs con CSS

Come creare un menu tabs con CSS


Vuoi creare un menu tabs utilizzando solamente CSS e senza l’ausilio di Javascript?

Oppure cerca tra gli articoli correlati


Qualche dubbio? Ecco le opinioni degli altri utenti

Ciao, c'è anche il modo per far si che solo all'amministratore venga permesso di modificare la password dal login? Utilizzando il primo dei tre codici, infatti, anche all'admin (con il suo nome utente o mail) viene impedito di modificare la password e se malauguratamente fosse sloggato dal sito e l'avesse dimenticata, non entra più nel sito.
Grazie del chiarimento.

In risposta a Federica

Ciao Federica, come stai? Spero bene!

Si, è possibile con una piccola variazione al codice fornito, ad esempio:


add_filter ( 'allow_password_reset', function( $allow, $user_id ) {
if ( user_can( $user_id, 'administrator' ) ) {
return $allow;
}
return false;
}, 10, 2 );

In questo modo, se l’utente che ha tentato il login ha ruolo/capacità di amministratore, viene mantenuto il comportamento di default di WordPress, per tutti gli altri utenti, viene negato il cambio password.

In ogni caso, anche usando lo snippet presente nella guida, che disabilita il cambio password a tutti gli utenti, in caso di smarrimento della password potresti sempre rimuovere temporaneamente lo snippet dal file functions.php del tuo tema attivo, cambiare la password e ripristinare poi lo snippet che ne blocca il cambio 🙂

Infine, una alternativa è modificare la password dal phpMyAdmin, come descritto nella guida: Come resettare la password di WordPress con phpMyAdmin

Spero di esserti stato di aiuto 🙂

Salve,
come faccio a impedire che gli utenti cambino l'email entrando nel profilo?

In risposta a Francesco

Ciao Francesco, dai un’occhiata qui:

Come disabilitare il cambio email nel profilo utente in WordPress

E tu cosa ne pensi? Condividi la tua opinione e discutiamone insieme
La tua email non sarà resa pubblico o utilizzata per inviarti spam, te lo prometto

Iscrivimi alla newsletter per ricevere news ed aggiornamenti
Utilizziamo piattaforme di terze parti per l’invio di newsletter. (Informativa sulla privacy)
Tienimi aggiornato su questo articolo
Ricevi una email di notifica quando qualcuno scriverà un commento a questo articolo. (Informativa sulla privacy)
Ricorda i miei dati per la prossima volta che scriverò un commento
Il tuo nome e la tua email verranno salvati in un cookie in questo browser. (Informativa sulla privacy)