Изменить сообщения об ошибках входа

19

взглянул на вопросы, но я не смог найти подобного.

Мне нужно изменить пользовательские сообщения об ошибках, которые отображаются, когда пользователь пытается войти с неправильным именем пользователя или паролем.

Например, измените это: « ОШИБКА : пароль, который вы ввели для имени пользователя % 1 $ s , неверен. Забыли пароль?» на эту «неправильную информацию» (просто пример)

Я пытался использовать add_filter, но я не знаком с ним, поэтому любая помощь будет оценена! Благодарность

Витор Аргос
источник
Для чего стоит, комментарий выше user20986 является спамом. Вы попадете на страницу, которая сообщает, что ваше программное обеспечение для флеш-памяти устарело и нуждается в обновлении. Рекомендую администраторам удалить комментарий пользователя 20986
leromt

Ответы:

21

Вы можете сделать это, используя login_errorsфильтр-хук, и вот как:

add_filter('login_errors','login_error_message');

function login_error_message($error){
    //check if that's the error you are looking for
    $pos = strpos($error, 'incorrect');
    if (is_int($pos)) {
        //its the right error so you can overwrite it
        $error = "Wrong information";
    }
    return $error;
}

Обновить:

я только что проверил код, и он отлично работает, просто вставил код в файл functions.php моей темы, ничего не меняя при помощи файла .po

введите описание изображения здесь

Bainternet
источник
Просто чтобы все прояснить, я должен заменить «неправильный» на строку ошибки? Кстати, спасибо за ваш ответ!
Витор Аргос
Просто попробовал этот способ, и он t work, but Iне уверен, что файл WordPress .po перезаписывает текст. Есть идеи?
Витор Аргос
текст из WordPress.po подается до того, как будет обработан фильтр-ловушка, и нет необходимости изменять incorrectего, проверяется, содержит ли сообщение об ошибке это слово.
Bainternet
Я пытался заставить это работать, но я не мог. Я даже пытался удалить условную часть, поэтому она должна вернуть текст в переменную $ error, верно? Но это не имеет никакого эффекта. Копая файл .po Я увидел, что сообщения, которые я хочу перезаписать, находятся в файле wp-includes / user.php, например: «<strong> ОШИБКА </ strong>: поле имени пользователя пусто».
Витор Аргос
@Vitor, вы делаете что-то не так, не нужно трогать .po файл, я обновил свой ответ.
Bainternet