Qual è il modo più semplice per impedire a WP di disconnettermi mai


28

Dopo un certo periodo di tempo WP disconnette tutti gli utenti e li costringe a riconnettersi. Per gli ambienti di sviluppo sul mio computer locale questo è odioso e assolutamente inutile.

Esiste un modo basato su API per disabilitare il logout automatico indefinitamente? Idealmente, vorrei aggiungere qualcosa wp-config.phpinsieme ad altre impostazioni relative alla configurazione degli sviluppatori.

Un plug-in sarebbe eccessivo per me, quindi non lo considero una risposta, ma potresti anche pubblicarlo come opzione.

Risposte:


27

Per impostazione predefinita, la casella di controllo "Ricordami" ti fa ricordare per 14 giorni. Questo è filtrabile però.

Questo codice cambierà quel valore:

add_filter( 'auth_cookie_expiration', 'keep_me_logged_in_for_1_year' );

function keep_me_logged_in_for_1_year( $expirein ) {
    return 31556926; // 1 year in seconds
}

1
Questo è esattamente ciò di cui avevo bisogno. Penso che una costante per questo valore sarebbe davvero utile, ma un filtro è la cosa migliore successiva. Potrei anche usarlo create_function()per farlo su una riga.
jerclarke,

2
create_function()è lento e rende difficile rimuovere il filtro. È consigliabile utilizzare una funzione. :)
Viper007Bond

È possibile anche ottenere una recente versione di PHP e scriverlo come chiusura: php.net/manual/en/functions.anonymous.php - suppors WordPress che. Basta non ostacolarti e non usare più create_function (). Fa schifo
Hacre,

1
YEAR_IN_SECONDSpuò essere usato invece 31556926. Ci sono anche altre costanti. (Vedi wp-includes/default-constants)
Upeksha,

1
@Upeksha: Al momento in cui questa risposta è stata scritta, quelle costanti non esistevano. ;) Hai ragione però che ora che lo fanno, sarebbe meglio usarli.
Viper007,

4

Ciò ha più a che fare con il modo in cui il browser memorizza i cookie. Quando effettui l'accesso, dovresti salvare il cookie e WordPress lo legge per vedere se sei autenticato (almeno questo è ciò che intendo).

Su tutte le installazioni di sviluppo locali il mio nome utente è admin e la mia password è admin. Non trovo 8 lettere per essere davvero un grosso problema, ma forse scrivo più velocemente?


Uso i backup dei database live e in quelli ho sempre password complesse su tutti gli account admin. Inoltre, ho spesso nomi utente diversi per siti diversi e in molti casi Firefox ha difficoltà a differenziare le mie diverse installazioni locali a scopo di completamento automatico.
jerclarke,

Esattamente, le impostazioni del tuo browser sovrascriveranno la funzione Ricordami.
Brad Dalton,

-2

Funziona se lo metti in wp-config.php?

function wp_validate_auth_cookie($cookie='',$scheme='') {
    return 1; // admin user id
}

Non accuratamente testato. Non è tanto "non disconnettermi mai", ma piuttosto "tratta tutti come amministratore".


5
NON UTILIZZARE MAI IN PRODUZIONE !!! Sembra un'installazione sandbox.
Arlen Beiler,

2
NON FARLO o verrai rapidamente hackerato!
T.Todua,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.