web-dev-qa-db-fra.com

Existe-t-il un point d'ancrage après qu'un utilisateur se soit connecté?

Je suis en train d'écrire un plugin qui récupère des informations utilisateur étendues d'un service distant et j'en ai besoin pour exécuter sa fonction à chaque fois qu'un utilisateur se connecte.

Existe-t-il un crochet qui se déclenche après la connexion et auquel je peux ajouter une action?

22
Adam Franco

Le crochet d'action wp_login s'exécute lorsque l'utilisateur se connecte - il peut exécuter une fonction simple.

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

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

Le vrai soutien de famille ici est wp_authenticate qui contient un peu de documentation. Il transmet un tableau avec le nom d'utilisateur et le mot de passe donnés, ce qui vous permet de transmettre des informations au service distant, si nécessaire. https://codex.wordpress.org/Plugin_API/Action_Reference/wp_authenticate

et pour changer l'URL de redirection après la connexion, il existe le filtre login_redirect: https://codex.wordpress.org/Plugin_API/Filter_Reference/login_redirect

29
Drew Gourley

Je déconseille d'utiliser wp_login. Il est déconseillé et, dans les versions ultérieures de WordPress, il risque de ne pas fonctionner du tout. Essayez plutôt la fonction wp_signon .

Edit : La fonction wp_login est obsolète, mais l'action wp_login est encore utilisable.

9
adam2k