1 аккаунт 1 устройства
-
Здравствуйте, можно ли сделать так чтобы человек не мог зайти на сайт одновременно с двух устройств с одним аккаунт?
-
не разрешать вход, если есть другая сессия:
add_filter( 'authenticate','one_session_per_user', 30, 3 ); function one_session_per_user( $user, $username, $password ) { $sessions = WP_Session_Tokens::get_instance( $user->ID ); $all_sessions = $sessions->get_all(); if ( count($all_sessions) ) { $user = new WP_Error(‘already_signed_in’, __(‘<strong>ERROR</strong>: User already logged in.’)); } return $user; }разлогинить другие сессии и войти:
add_filter('authenticate', 'wpse_12282015_single_login_authenticate', 0, 3); function wpse_12282015_single_login_authenticate($user, $username, $password) { $user = get_user_by('login', $username); if( isset($user->ID) ){ if(isset($user->roles) && is_array($user->roles)) { //check for admins if(in_array('administrator', $user->roles)) { // admin can log in more than once return $user; } } // get all sessions for user $sessions = WP_Session_Tokens::get_instance($user->ID); // destroy everything since we'll be logging in shortly $sessions->destroy_all(); } return $user; }adikambarov, приветствую.
Сразу вопрос: зачем это нужно?
Можете ограничить кол-во допустимых сессий (1) на пользователя (это умеет делать плагин «WP Bouncer»).
Помоги пожалуйста, можешь подсказать куда вставить эти коды? или в function.php
adikambarov, да, можно в functions.php, можно в функциональный плагин.
@m0ze спасибо щас попробую
@fierevere хочу сделать платный контент.
не нужно пингать по имени пользователя, тем более я у вас это не спрашивала.
@fierevere Здравствуйте, у меня возникло проблема я установил тему Kava от компании crocoblock
и в function.php написал коды которые вы отправили но выводит ошибку: syntax error, unexpected ‘>’-
Ответ изменён 5 лет, 11 месяцев назад пользователем
adikambarov.
adikambarov, привет.
Во-первых (опять):
@ᶂierevere Здравствуйте…
не нужно пингать по имени пользователя, тем более я у вас это не спрашивала.
В сообщениях
@name— пинг.Во-вторых:
в function.php написал коды
Куда именно? Как?
syntax error, unexpected ‘>’
Обычно указывается ещё и строчка в файле. В вашем случае это..?
Для профилактики проверьте кавычки, потом посмотрите на номер строчки в сообщении об ошибке.
-
Ответ изменён 5 лет, 11 месяцев назад пользователем
Тема «1 аккаунт 1 устройства» закрыта для новых ответов.