Avisos
Vaciar todo

Eliminación de Texto en Mensaje de Error de Contraseña Olvidada

5 Respuestas
3 Usuarios
0 Reactions
22 Visitas
Respuestas: 146
Estimable Member
Topic starter
 
¡Hola equipo!
 
Tengo una consulta. Cuando un usuario quiere entrar y no recuerda su contraseña, se muestra el mensaje de error, aparece el siguiente texto: "Error: la contraseña que has introducido para la dirección de correo electrónico prueba@lala.com no es correcta. ¿Has olvidado tu contraseña?".
 
Mi objetivo es eliminar únicamente la frase "¿Has olvidado tu contraseña?" de ese mensaje de error. He intentado buscar en Loco Translate la cadena de texto correspondiente para borrar el enlace, pero no la encuentro.
 
He notado que al hacer clic en ese enlace, se redirige a la interfaz de WordPress, lo cual no es necesario, ya que existe un botón dedicado debajo para la recuperación de contraseña que mantiene la interfaz de mi sitio web.
 
Gracias un saludo!
 
Captura de pantalla

Contenido solo visible a usuarios registrados


 
Respondido : 16/08/2023 12:45 pm
Pepe
 Pepe
Respuestas: 41230
Illustrious Member Admin
 

Hola Jonathan.

Añade lo siguiente en el archivo functions.php o si utilizas algún plugin para añadir código como puede ser Code Snippets

add_filter('login_errors', create_function('$a', "return '<b>Error:</b> Nombre de usuario o Password incorrecto';"));

 

Por seguridad no es bueno que indiques si el error es de la contraseña o del nombre de usuario, al indicar de donde proviene el error ya les estas dando una pista a cualquiera que quiera forzar el acceso.

 

Un Saludo


 
Respondido : 16/08/2023 2:26 pm
Respuestas: 146
Estimable Member
Topic starter
 

@pepesoler

Hola Pepe,

Te agradezco mucho tu ayuda. Sin embargo, debo decirte que anteriormente ya lo había probado y me encontré con un inconveniente al activar el filtro. Tengo habilitada la opción de verificación por email y, cuando los usuarios olvidan validar su dirección de correo a través del email que se les envía y después intentan entrar, se muestra el mismo mensaje de error genérico que indica "Nombre de usuario o Password incorrecto". Esto genera confusión, ya que en realidad debería aparecer un mensaje indicando que falta la verificación por email. De hecho, debido a esta confusión, he tenido clientes que optaron por no registrarse.

Te adjunto algunas capturas para que puedas ver la diferencia entre lo que aparece actualmente y el error que, en realidad, debería mostrarse.

Agradezco de tu ayuda para resolver este asunto.

Error
validacion email

 
Respondido : 16/08/2023 3:42 pm
Respuestas: 146
Estimable Member
Topic starter
 

Hola de nuevo. 

Estoy haciendo pruebas y he desarrollado un código que parece que ahora funciona correctamente. Es el siguiente:

 

add_filter('login_errors', function($error) {
if (strpos($error, 'rtcl-resend-verify-link') !== false) {
preg_match('/data-login="([^"]+)"/', $error, $matches);
$email = isset($matches[1]) ? $matches[1] : '';
return 'No ha verificado su correo electrónico, por favor, compruebe su correo y haga clic en el enlace de verificación que le hemos enviado. <a href=";" id="rtcl-resend-verify-link" data-login="' . esc_attr($email) . '">Reenviar el enlace</a>';
}
return '<b>Error:</b> Nombre de usuario o contraseña incorrecta';
});

 

Ahora muestra el mensaje de error de verificación cuando es necesario. Si me dais el ok de utilizar el siguiente código me quedo más tranquilo.

 

Gracias de nuevo. ¡Saludos! 😊


 
Respondido : 16/08/2023 4:30 pm
Karen Rios
Respuestas: 18766
Illustrious Member Moderator
 

Hola Jonathan, 

Veo que funciona de forma correcta, si al añadirlo todo se aplica bien y no se rompe nada del sitio web puedes activarlo. Ahora mismo si pulsa en la opción de olvidar contraseña me muestra esto. 

image

Un saludo 


 
Respondido : 16/08/2023 4:43 pm