Очень удобная функция. Благодаря ей, мы например можем автоматически авторизовывать пользователя на сайте сразу же после регистрации.
Важно: функцию обязательно нужно использовать в начале страницы, перед выводом какого-либо контента или HTML.
wp_signon( $credentials = '', $secure_cookie = '' )
- $credentials
- (массив)
$credentials['user_login']
— имя пользователя,$credentials['user_password']
— незакодированный пароль,$credentials['remember']
— аналог галочки «Запомнить меня»;
Если этот массив не передан в функцию, тогда будут автоматически взяты переменные
$_POST['log']
,$_POST['pwd']
и$_POST['rememberme']
.Если же массив передан в функцию, то он должен обязательно содержать имя пользователя и пароль.
- $secure_cookie
- (логическое) нужно ли использовать защищенные куки.
Если этот массив не передан в функцию, тогда будут автоматически взяты переменные $_POST['log']
, $_POST['pwd']
и $_POST['rememberme']
.
Если же массив передан в функцию, то он должен обязательно содержать имя пользователя и пароль.
В случае успешной авторизации возвращает объект WP_User. Если авторизация не удалась, возвращает объект WP_Error.
Пример
// задаем массив с параметрами $credentials = array(); $credentials['user_login'] = 'admin'; $credentials['user_password'] = '12345'; $credentials['remember'] = true; // авторизуем $user = wp_signon( $credentials, false ); // в случае неуспешной авторизации, смотрим, что не так if ( is_wp_error($user) ) { echo $user->get_error_message(); }