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();
}

Миша

В последние годы я долго не знал, что мне делать с сайтом misha.blog, ведь он практически не приносит никакого профита, но недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

Оставить комментарий

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, в случае несоблюдения этого условия в 99% случаях ваш коммент будет удалён, а автор заблокирован. Печалька.