为WP登录页面设置“记住我”简析
当用户登录使用Wordpress的方式登录Wordpress网站的时候,可以选择“记住我”,本文要讨论的就是这个功能。
Wordpress:记住我
未特别说明的代码都是以合适的方式添加到在用的Wordpress主题的functions.php中的。
1.自定义“记住我”的时间长度
它是通过cookie实现的,如果不勾选此项,cookie最长有效期为2天,如果勾选此项,cookie最长有效期为2周。我们如果想让cookie有效期为1年的话,可以这样做:
add_filter( 'auth_cookie_expiration', 'cwp_custom_login_cookie' );
function cwp_custom_login_cookie() {
return 31536000; // 这是以秒为单位的1年
}
如果你想设置其它时间长度,请以秒为单位自行修改上面的数字。
2.默认勾选电磁隔膜计量泵“记住我”选项
你可以设置默认勾选“记住我”,如下:
add_filter( 'login_footer', 'cwp_always_rememberme_me' );
function cwp_always_rememberme_me() {
echo "<script>document.getElementById('rememberme').checked = true;</script>";
}
3.隐藏“记住我”选项
add_action('login_head', 'cwp_hide_remember_me');
function cwp_hide_remember_me()
{
echo '<style type="text/css">.forgetmenot { display:none; }</style>';
}
4. Bonus!
你可以定义在用户登录后,据用户的不同角色跳转到设定的电磁隔膜计量泵:
//如果登录者不是管理员,就跳转至首页;如果登录者是管理员,就跳转至后台页面
function cwp_login_redirect($redirect_to, $request, $user){
return (is_array($user->roles) && in_array('administrator', $user->roles)) ? admin_url() : site_url();//site_url()你可以自定义为其它任何链接
} http://www.hrbnu.edu.cn/
add_filter('login_redirect', 'cwp_login_redirect', 10, 3);