阻止WP退出我的最简单方法是什么


28

在一定时间后,WP将注销所有用户,并强制他们重新登录。对于本地计算机上的开发环境,这是令人讨厌的,而且绝对没有必要。

是否有API驱动的方式来无限期禁用自动注销?理想情况下,我希望可以将其wp-config.php与其他与开发设置相关的设置一起添加。

插件对我来说太过分了,所以我不会认为这是一个答案,但是您最好将其发布为一个选项。

Answers:


27

默认情况下,“记住我”复选框可让您记住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()至可以用它做一行。
jerclarke

2
create_function()速度慢,难以拆卸过滤器。最佳做法是使用函数。:)
Viper007Bond 2010年

您甚至可以获得最新的PHP版本并将其写为闭包:php.net/manual/en/functions.anonymous.php-WordPress支持。只是不要妨碍自己,也不要再使用create_function()。糟透了
hakre 2010年

1
YEAR_IN_SECONDS可以代替使用31556926。还有其他常量。(请参阅wp-includes/default-constants
Upeksha 2013年

1
@Upeksha:在编写此答案时,这些常量不存在。;)您是正确的,尽管现在这样做了,最好使用它们。
Viper007Bond

4

这与浏览器存储Cookie的方式有关。当您登录时,它应该保存cookie,而WordPress会读取它以查看您是否已通过身份验证(至少这就是我的理解)。

在所有本地开发人员安装上,我的用户名是admin,密码是admin。我发现8个字母确实没什么大不了,但也许我打字速度更快?


我使用实时数据库的备份,在这些备份中,我在所有管理员帐户中始终具有强密码。对于不同的站点,我通常也使用不同的用户名,并且在许多情况下,Firefox很难区分用于自动完成目的的不同本地安装。
jerclarke

确实,您的浏览器设置将覆盖“记住我”功能。
布拉德·道尔顿2014年

-2

如果将其放在wp-config.php中,此方法有效吗?

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

未经彻底测试。它并不是“从不注销我”,而是“以管理员身份处理所有人”。


5
切勿在生产中使用!!!听起来像沙盒安装。
阿伦·贝勒

2
不要这样做,否则您将很快被黑!
T.Todua '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.