web-dev-qa-db-ger.com

Gibt es einen Haken, der ausgeführt wird, nachdem sich ein Benutzer angemeldet hat?

Ich schreibe ein Plugin, das einige erweiterte Benutzerinformationen von einem Remotedienst abruft und das ich bei jeder Anmeldung eines Benutzers zur Ausführung seiner Funktion benötige.

Gibt es einen Haken, der nach der Anmeldung ausgelöst wird und dem ich eine Aktion hinzufügen kann?

22
Adam Franco

Der Aktions-Hook wp_login wird ausgeführt, wenn sich der Benutzer anmeldet. Er kann eine einfache Funktion ausführen.

function do_anything() {
    //do stuff
}
add_action('wp_login', 'do_anything');

dokumentation: https://codex.wordpress.org/Plugin_API/Action_Reference/wp_login

Der wahre Ernährer hier ist wp_authenticate, der ein bisschen Dokumentation hat. Es übergibt ein Array mit dem angegebenen Benutzernamen und Kennwort, sodass Sie bei Bedarf Informationen an den Remote-Service übergeben können. https://codex.wordpress.org/Plugin_API/Action_Reference/wp_authenticate

und um die Weiterleitungs-URL nach dem Login zu ändern, gibt es den Filter login_redirect: https://codex.wordpress.org/Plugin_API/Filter_Reference/login_redirect

29
Drew Gourley

Ich würde davor warnen, wp_login zu verwenden. Es ist veraltet und in späteren Versionen von WordPress funktioniert es möglicherweise überhaupt nicht. Versuchen Sie stattdessen die Funktion wp_signon .

Edit : Die Funktion wp_login ist veraltet, aber die Aktion wp_login ist noch in Ordnung.

9
adam2k