Apa cara termudah untuk menghentikan WP agar tidak keluar dari saya

28

Setelah waktu tertentu, WP logout semua pengguna dan memaksa mereka untuk masuk kembali. Untuk lingkungan pengembangan pada mesin lokal saya ini menjengkelkan dan sama sekali tidak perlu.

Apakah ada cara yang digerakkan oleh API untuk menonaktifkan logout otomatis tanpa batas? Idealnya saya ingin sesuatu yang bisa saya tambahkan wp-config.phpbersama dengan pengaturan yang berhubungan dengan dev-setup lainnya.

Sebuah plugin akan berlebihan bagi saya jadi saya tidak akan menganggapnya sebagai jawaban, tetapi Anda sebaiknya mempostingnya sebagai opsi.

jerclarke
sumber

Jawaban:

27

Secara default, kotak centang "Remember Me" membuat Anda diingat selama 14 hari. Ini bisa disaring.

Kode ini akan mengubah nilai itu:

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
}
Viper007Bond
sumber
1
Inilah yang saya butuhkan. Saya pikir konstanta untuk nilai ini akan sangat berguna, tetapi filter adalah hal terbaik berikutnya. Saya bahkan bisa menggunakannya create_function()untuk melakukannya pada satu baris.
jerclarke
2
create_function()lambat dan membuatnya sulit untuk menghapus filter. Praktik terbaik untuk menggunakan fungsi. :)
Viper007Bond
Anda bahkan bisa mendapatkan versi PHP terbaru dan menulisnya sebagai penutup: php.net/manual/en/functions.anonymous.php - WordPress mendukung itu. Hanya saja, jangan menghalangi Anda sendiri dan jangan gunakan create_function () lagi. Menyebalkan sekali.
hakre
1
YEAR_IN_SECONDSdapat digunakan sebagai gantinya 31556926. Ada konstanta lain juga. (Lihat wp-includes/default-constants)
Upeksha
1
@Upeksha: Pada saat jawaban ini ditulis, konstanta-konstanta itu tidak ada. ;) Anda benar bahwa sekarang mereka melakukannya, akan lebih baik untuk menggunakannya.
Viper007Bond
4

Ini lebih berkaitan dengan bagaimana Anda menyimpan cookie di browser. Ketika Anda login, cookie itu harus disimpan dan WordPress membacanya untuk melihat apakah Anda diautentikasi (setidaknya itulah yang saya pahami).

Pada semua pengembang lokal menginstal nama pengguna saya adalah admin dan kata sandi saya adalah admin. Saya tidak menemukan 8 huruf menjadi masalah besar, tetapi mungkin saya mengetik lebih cepat?

curtismchale
sumber
Saya menggunakan cadangan dari database langsung, dan di dalamnya saya selalu memiliki kata sandi yang kuat di semua akun admin. Saya juga sering memiliki nama pengguna yang berbeda untuk situs yang berbeda, dan dalam banyak kasus Firefox kesulitan membedakan instalasi lokal saya yang berbeda untuk keperluan pelengkapan otomatis.
jerclarke
Tepatnya, pengaturan browser Anda akan menulis fungsi ingat saya.
Brad Dalton
-2

Apakah ini berfungsi, jika Anda menempatkannya di wp-config.php?

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

Tidak diuji secara menyeluruh. Itu tidak begitu "tidak pernah mengeluarkan saya" tetapi "memperlakukan semua orang sebagai admin."

Annika Backstrom
sumber
5
JANGAN PERNAH GUNAKAN DALAM PRODUKSI !!! Kedengarannya seperti instalasi kotak pasir.
Arlen Beiler
2
JANGAN MELAKUKANNYA atau Anda akan dengan cepat diretas!
T.Todua