wp_signon() — авторизует пользователя на сайте

Очень удобная функция. Благодаря ей, мы например можем автоматически авторизовывать пользователя на сайте сразу же после регистрации.

Важно: функцию обязательно нужно использовать в начале страницы, перед выводом какого-либо контента или HTML.

wp_signon( $credentials = '', $secure_cookie = '' )
$credentials
(массив)

  • $credentials['user_login'] — имя пользователя,
  • $credentials['user_password'] — незакодированный пароль,
  • $credentials['remember'] — аналог галочки «Запомнить меня»;

Если этот массив не передан в функцию, тогда будут автоматически взяты переменные $_POST['log'], $_POST['pwd'] и $_POST['rememberme'].

Если же массив передан в функцию, то он должен обязательно содержать имя пользователя и пароль.

$secure_cookie
(логическое) нужно ли использовать защищенные куки.

В случае успешной авторизации возвращает объект 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();
}
Миша Рудрастых Разработчик WordPress WooCommerce

Миша Рудрастых

Впервые познакомился с WordPress в 2009 году, и после двух лет мучений с Joomla и самописными движками это был просто бальзам на душу. С 2014 года меня можно встретить на WordCamp — официальной конфе по WP в Москве, иногда там выступаю. Также в настоящее время веду курсы по WordPress в Epic Skills в Питере.