Не работает функция проверки пользователей при авторизации
Здравствуйте! Я переписал функцию входа на сайт так, чтобы при неправильном логине или пароле мне переходило не на wp-login а на страницу моего сайта
код с function.php
add_action( 'wp_login_failed', 'pu_login_failed' ); // hook failed login
function pu_login_failed( $user ) {
// check what page the login attempt is coming from
$referrer = $_SERVER['HTTP_REFERER'];
// check that were not on the default login page
if ( !empty($referrer) && !strstr($referrer,'wp-login') && !strstr($referrer,'wp-admin') && $user!=null ) {
// make sure we don't already have a failed login attempt
if ( !strstr($referrer, '/auth/' )) {
// Redirect to the login page and append a querystring of login failed
wp_redirect( $referrer . '/auth/');
} else
wwp_redirect( $referrer );
exit;
}
}
add_action( 'authenticate', 'pu_blank_login');
function pu_blank_login( $user ){
// check what page the login attempt is coming from
$referrer = $_SERVER['HTTP_REFERER'];
$error = false;
if($_POST['log'] == '' || $_POST['pwd'] == '')
{
$error = true;
}
// check that were not on the default login page
if ( !empty($referrer) && !strstr($referrer,'wp-login') && !strstr($referrer,'wp-admin') && $error ) {
// make sure we don't already have a failed login attempt
if ( !strstr($referrer, '/auth/' )) {
// Redirect to the login page and append a querystring of login failed
wp_redirect( $referrer . '/auth/' );
} else {
wp_redirect( $referrer );
}
exit;
}
} }
}
Это все работает, но теперь мне нужно добавить проверку
global $wpdb;
$access = $wpdb->get_var("SELECT `access` FROM `wp_users` WHERE `user_email` = '$user'");
...
if ( $access != '1') {
wp_redirect( $referrer . '/auth/' );
}
как я только не пробовал вставить эту проверку в функции, ничего не получается. Функции просто игнорируют условие.
Подскажите пожалуйста, что я делаю не так?
НЕ понятно по коду, что есть что надо доказать...