Условия авторизации на измененный wp-login
Изменил страницу входа на auth.php
add_action( 'wp_login_failed', 'pu_login_failed' ); // hook failed login
function pu_login_failed( $user ) {
$users = get_user_by('login', $user);
$user_id = $users->ID;
$user_blacklist = get_user_meta($user_id, 'blacklist', true);
// 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 ( $user_blacklist == '1' ) {
wp_redirect( $referrer . '/auth/?errors=2');
} else
if ( !strstr($referrer, '/auth/' ) || !strstr($referrer, '/auth/?errors=1' )) {
// Redirect to the login page and append a querystring of login failed
wp_redirect( $referrer . '/auth/?errors=1');
} else {
wp_redirect( $referrer );
}
exit;
}
}
add_action( 'authenticate', 'pu_blank_login');
function pu_blank_login( $user ){
$users = get_user_by('login', $user);
$user_id = $users->ID;
$user_blacklist = get_user_meta($user_id, 'blacklist', true);
// 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 ) {
if($user_blacklist == '1') {
wp_redirect( $referrer . '/auth/?errors=2' );
} else if ( !strstr($referrer, '/auth/') || !strstr($referrer, '/auth/?errors=1')) {
// Redirect to the login page and append a querystring of login failed
wp_redirect( $referrer . '/auth/?errors=1' );
} else {
wp_redirect( $referrer );
}
exit;
}
}
Но обработчик пропускает проверку
if ( $user_blacklist == '1' ) {
Может я что не там написал?