WPがログアウトするのを止める最も簡単な方法は何ですか


28

一定の時間が経過すると、WPはすべてのユーザーをログアウトし、強制的に再度ログインさせます。私のローカルマシンの開発環境では、これは不快で絶対に不要です。

自動ログアウトを無期限に無効にするAPI駆動の方法はありますか?理想的にはwp-config.php、他の開発セットアップ関連の設定とともに追加できるものが欲しいです。

プラグインは私にとってはやりすぎなので、私はそれを答えとは考えませんが、オプションとして投稿することもできます。

回答:


27

デフォルトでは、「Remember Me」チェックボックスをオンにすると、14日間記憶されます。ただし、これはフィルタリング可能です。

このコードはその値を変更します:

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
これはまさに私が必要としたものです。この値の定数は本当に便利だと思いますが、次に良いのはフィルターです。create_function()1行で実行することもできます。
jerclarke

2
create_function()速度が遅く、フィルターの取り外しが難しくなります。関数を使用することをお勧めします。:)
Viper007Bond

最新のPHPバージョンを取得してクロージャとして記述することもできます:php.net/manual/en/functions.anonymous.php-WordPressはそれをサポートしています。邪魔しないで、create_function()を使用しないでください。それは吸う。
ハクレ

1
YEAR_IN_SECONDS代わりに使用できます31556926。他の定数もあります。(参照wp-includes/default-constants
ウペクシャ

1
@Upeksha:この答えが書かれた時点では、これらの定数は存在していませんでした。;)あなたは正しいのですが、彼らがそうするようになったので、それらを使うほうが良いでしょう。
Viper007Bond

4

これは、ブラウザがCookieを保存する方法と関係があります。ログインすると、Cookieが保存され、WordPressがそれを読み取って、認証されているかどうかを確認する必要があります(少なくともそれが私の理解です)。

すべてのローカルdevインストールで、ユーザー名はadmin、パスワードはadminです。本当に大したことのない8文字は見つかりませんが、多分もっと速く入力できますか?


私はライブデータベースのバックアップを使用しますが、それらのバックアップでは常にすべての管理者アカウントに強力なパスワードがあります。また、サイトごとに異なるユーザー名を持っていることが多く、多くの場合、Firefoxはオートコンプリートの目的でローカルインストールを区別できません。
jerclarke

正確に言えば、ブラウザの設定はremember me機能を上書きします。
ブラッドダルトン14

-2

wp-config.phpに配置すると、これは機能しますか?

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

完全にはテストされていません。「決してログアウトしない」のではなく、「全員を管理者として扱う」。


5
生産には絶対に使用しないでください!!! サンドボックスインストールのように聞こえます。
アーレンベイラー

2
それをしないと、すぐにハッキングされます!
-T.Todua
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.