Nachdem ich ein paar Tage gesucht und 2 Jahre alte Threads gelesen habe, habe ich Schwierigkeiten, eine Lösung für das Problem zu finden, dass sich Benutzer nur per E-Mail anmelden.
Zuerst freute ich mich, WP_Email_Login zu sehen, nur um herauszufinden, dass Sie Ihren Benutzernamen weiterhin zum Anmelden verwenden können. Ich bin mir nicht sicher, wie ich das als Plugin schreiben soll. Meine Idee ist es, die Funktion register_new_user zu überschreiben. Ich habe dies nicht auf der "steckbaren" Funktionsliste gesehen. Kann ich Filter / Aktionen verwenden, um dies zu erreichen?
Mir ist klar, dass es nicht in Mode ist, die Kerndateien zu bearbeiten. Ich hoffe, dass es eine Lösung gibt, aber wenn es keine gibt, gehe ich mein Risiko ein. In der ersten Zeile der Funktion "register_new_user" in wp-login.php kann ich hinzufügen:
$nickname_variable(??) = $user_login // set the nickname to the username
$user_login = $user_email; // set the user_login/username to the email address
Dies funktioniert sehr gut, da WordPress es nicht erlaubt, den Benutzernamen zu ändern. Auf dem Registrierungsbildschirm (Formular) werden Sie nach dem Benutzernamen und der E-Mail-Adresse gefragt. Ich möchte den Benutzernamen auf die Variable "Spitzname" setzen (wenn mir jemand sagen kann, wie die Spitznamenvariable heißt oder wo sie bei der Registrierung festgelegt wurde, wäre das wünschenswert).
Prost,
Schmied