Домой Wp-Recall WP-Recall: Предложения и идеи Вывод ошибок авторизации и редирект
4 ответ(ов) в теме
CosworthRS
не в сети 1 неделя
На сайте с 24.04.2017
Участник
Тем 6
Сообщения 25
1
21:30
Версия WP-Recall:16.4.8

Здравствуйте! В форме авторизации при вводе не существующего логина или e-mail выводится стандартная ошибка WP с ссылкой на восстановление пароля (при этом ссылка ведет на вордпресовскую форму, а не на реколл) Может лучше стандартные ошибки изменить на реколловские? Надо только одну функцию изменить. У себя сделал, теперь все корректно, но при обновлении плагина приходиться изменять файл. register.php И было бы очень хорошо в основной версии плагина поправить редирект при восстановлении пароля (если логин или e-mail не существует), перебрасывает на стандартную форму WP из-за того, что обработчиком выступает файл WP, URL <form action="" method="post"> в файле form-remember.php.

0
CosworthRS
не в сети 1 неделя
На сайте с 24.04.2017
Участник
Тем 6
Сообщения 25
2
15:54

Чтобы исправить вывод ошибки при неправильном логине в форме авторизации и кастомизировать ошибки можно вставить код в файл functions.php активной темы.

function My_login_errors(){
    global $wp_errors;
        foreach ( $wp_errors->get_error_codes() as $code ) {
					switch ( $code ) {
				case 'wpc_captcha_error':
					$errors = "<strong>Ошибка</strong>.<br />Пожалуйста, введите значение каптчи.";
					break;		
				case 'wpc_captcha_blank':
					$errors = "<strong>Ошибка</strong>.<br />Пожалуйста, введите значение каптчи.";
					break;	
				case 'email_exists':
					$errors = "<strong>Ошибка</strong>.<br />Введенный e-mail уже зарегистрирован.";
					break;
				case 'username_exists':
					$errors = "<strong>Ошибка</strong>.<br />Введенный логин уже зарегистрирован.";
					break;	
				case 'empty_username':
					$errors = "<strong>Ошибка</strong>.<br />Вы не забыли указать свой e-mail или логин?";
					break;
				case 'empty_password':
					$errors = "<strong>Ошибка</strong>.<br />Пожалуйста, введите пароль.";
					break;
				case 'invalid_username':
					$errors = "<strong>Ошибка</strong>.<br />Неверный логин или пароль.";
					break;
				case 'incorrect_password':
					$errors = sprintf( "<strong>Ошибка</strong>.<br />Неверный логин или пароль.");
					break;
				case 'expiredkey':
				case 'invalidkey':
					$errors = "<strong>Ошибка</strong>.<br />Недействительный ключ.";
					break;
			}	
        } 
    return $errors;
}

add_filter('login_errors','My_login_errors');

Вот что получится:
было
меню авторизации

стало
изменение вывода ошибки

Таким же образом можно изменить вывод

Вы не можете просматривать опубликованные ссылки

. Можно поменять полностью меню

Вы не можете просматривать опубликованные ссылки

.

0
Андрей CS
не в сети 32 минуты
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 12882
3
16:31

не понял при чем тут вообще плагин wp-recall? это стандартные ошибки ВП, вот и правьте их через доступные фильтры, существуют плагины специальные которые это делают.

0
CosworthRS
не в сети 1 неделя
На сайте с 24.04.2017
Участник
Тем 6
Сообщения 25
4
16:44

Эта тема не раз поднималась на форуме. Вот и предложил вариант исправления стандартной вордпрессовской ошибки, хотя можно это исправление вставить один раз в обновление плагина. Какой смысл маскировать путь авторизации, если по ссылке в ошибке все видно.

0
Вы не имеете права на публикацию сообщений в этой теме