Schimbă mesajele de eroare la autentificare

5 aug. 2011, 23:03:22
Vizualizări: 35.5K
Voturi: 21

M-am uitat prin întrebări dar nu am putut găsi una similară.

Am nevoie să schimb mesajele personalizate de eroare care sunt afișate când utilizatorul încearcă să se autentifice cu un nume de utilizator sau parolă greșită.

De exemplu, să schimb acest mesaj: "EROARE: Parola introdusă pentru numele de utilizator %1$s este incorectă. Ți-ai pierdut parola?" cu acesta "Informații greșite" (doar un exemplu)

Am încercat să folosesc "add_filter" dar nu sunt familiarizat cu el, așa că orice ajutor va fi apreciat! Mulțumesc

1
Comentarii

Pentru ceea ce valorează, comentariul de mai sus de la utilizatorul20986 este spam. Te duce pe o pagină care îți spune că software-ul tău flash este depășit și trebuie actualizat. Recomand administatorilor să elimine comentariul de la utilizatorul20986

leromt leromt
30 ian. 2019 17:07:09
Toate răspunsurile la întrebare 1
6
24

poți face asta folosind cârligul de filtrare login_errors și iată cum:

add_filter('login_errors','login_error_message');

function login_error_message($error){
    //verifică dacă aceasta este eroarea pe care o cauți
    $pos = strpos($error, 'incorrect');
    if (is_int($pos)) {
        //este eroarea corectă, așa că o poți suprascrie
        $error = "Informații greșite";
    }
    return $error;
}

actualizare:

tocmai am testat codul și funcționează perfect, am inserat codul în fișierul functions.php al temei mele fără a schimba nimic cu fișierul .po

imagine demonstrativă

6 aug. 2011 00:59:18
Comentarii

Doar ca să fie totul clar, ar trebui să înlocuiesc 'incorrect' cu șirul de eroare? Apropo, mulțumesc pentru răspuns!

Vitor Argos Vitor Argos
6 aug. 2011 01:07:10

Tocmai am încercat în acest fel și nu funcționează, dar nu sunt sigur dacă fișierul .po al WordPress suprascrie textul. Ai vreo idee?

Vitor Argos Vitor Argos
6 aug. 2011 01:10:55

textul din WordPress.po este servit înainte ca acel cârlig de filtrare să fie declanșat, și nu, nu trebuie să schimbi incorrect, verifică dacă mesajul de eroare conține acel cuvânt.

Bainternet Bainternet
6 aug. 2011 01:15:51

Am încercat să fac asta să funcționeze, dar nu am reușit. De fapt, am încercat chiar să elimin partea condițională, așa că ar trebui să returneze textul din variabila $error, nu-i așa? Dar nu are niciun efect.

Analizând fișierul .po, am văzut că mesajele pe care vreau să le suprascriu sunt localizate în fișierul wp-includes/user.php, precum: "<strong>EROARE</strong>: Câmpul nume de utilizator este gol."

Vitor Argos Vitor Argos
6 aug. 2011 01:37:06

@Vitor faci ceva greșit, nu este nevoie să modifici fișierul .po, am actualizat răspunsul meu.

Bainternet Bainternet
6 aug. 2011 03:03:16

Te rog să înlocuiești strpos cu stripos care este insensibil la majuscule/minuscule; este important deoarece mesajele de eroare sunt de genul "Eroare: Nume de utilizator invalid."

Marco Panichi Marco Panichi
9 iun. 2022 13:10:40
Arată celelalte 1 comentarii