I use this PHP snippet:
// CUSTOM ERROR LOGIN MESSAGES
add_filter('authenticate', function($user, $username, $password) {
if (is_wp_error($user)) {
if (isset($user->errors['invalid_username']) || isset($user->errors['invalid_email'])) {
if (!username_exists($username) && !email_exists($username)) {
unset($user->errors['invalid_username']);
unset($user->errors['invalid_email']);
$user->add('invalid_username', 'El usuario o el correo son incorrectos.');
}
}
if (isset($user->errors['incorrect_password'])) {
unset($user->errors['incorrect_password']);
$change_password_url = site_url('/cambiar-pwd');
$user->add('incorrect_password', 'El usuario, el correo o la contraseña no son correctos. <a href="' . $change_password_url . '">Cambiar tu contraseña</a>.');
}
I use this PHP snippet: // CUSTOM ERROR LOGIN MESSAGES add_filter('authenticate', function($user, $username, $password) { if (is_wp_error($user)) { if (isset($user->errors['invalid_username']) || isset($user->errors['invalid_email'])) { if (!username_exists($username) && !email_exists($username)) { unset($user->errors['invalid_username']); unset($user->errors['invalid_email']);
}
return $user; }, 20, 3);
https://github.com/Crocoblock/jetformbuilder/issues/267