WordPress函数wp_signon实现用户登陆
WordPress的用户登录函数wp_signon使用次数不是特别多,因此知道这个函数的人也比较少。wp_si…
WordPress的用户登录函数wp_signon使用次数不是特别多,因此知道这个函数的人也比较少。wp_signon函数主要使用在前台的用户中心功能上,实现前端登陆效果。通过前端传递的用户名和密码参数,wp_signon可以让该用户登陆到WordPress系统中,并且会设置浏览器cookies,保持登陆。下面我们根据WordPress官方文档,一起来学习下wp_signon函数的使用。
函数描述
将用户账号信息包装成数组作为凭证。如果没有提供凭据,则在设置时将假定并使用登录表单。各种身份验证cookie将由此函数设置,并根据“记住”凭据是否设置为true来设置更长的时间。
注意:wp_signon函数不会处理已经登陆的账户,如果你需要注册后直接登陆,你应该使用wp_set_current_user()函数。wp_set_current_user()是wp_signon与is_user_logged_in()函数的结合。
函数原型
wp_signon( array $credentials = array(), string|bool $secure_cookie = '' )
源码位于WordPress目录下wp-includes/user.php文件中,源码较长,这里就不贴了。
参数
$credentials
数组,默认为空
该数组定义了需要记住的登录信息,如果该参数为空,默认的值如下:
- $_POST[‘log’]
- $_POST[‘pwd’]
- $_POST[‘rememberme’]
$secure_cookie
布尔值,默认值:false
是否使用安全cookie
返回值
(object) 登录失败返回对象WP_Error,登录成功则返回WP_User
简单使用
function custom_login() { $creds = array(); $creds['user_login'] = 'example'; $creds['user_password'] = 'plaintextpw'; $creds['remember'] = true; $user = wp_signon( $creds, false ); if ( is_wp_error($user) ) echo $user->get_error_message(); } // 在加载头部前设置cookies add_action( 'after_setup_theme', 'custom_login' );
注意,需要先设置cookies!
类别:SEO、
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!