Как перенаправить пользователей после их первой авторизации?
Я уже описывал способ перенаправления пользователей после их регистрации на сайте. Однако, в некоторых случаях будет более правильным перенаправлять пользователей не после их регистрации, а после их первой авторизации на сайте. Так, по крайней мере, пользователи смогут увидеть сообщение движка о том, что регистрация на сайте завершена и им надо проверить свою почту (это может быть важно с тех пор, как WordPress перестал присылать письма с паролем по почте). Для этого вам необходимо добавить в файл functions.php вашей темы следующий код:
//перенаправление пользователей после первой авторизации start function wph_first_user_login($user_login, $user) { $new_user = get_user_meta($user->ID, '_new_user', true); if ($new_user) { update_user_meta($user->ID, '_new_user', '0'); wp_redirect( home_url('/rules/') ); exit; } } add_action('wp_login', 'wph_first_user_login', 10, 2); //добавление мета при регистрации пользователя function wph_register_add_meta($user_id) { add_user_meta($user_id, '_new_user', '1'); } add_action('user_register', 'wph_register_add_meta'); //перенаправление пользователей после первой авторизации end |
Где "rules" это ярлык страницы, куда будет перенаправлен пользователь.