web-dev-qa-db-fra.com

Comment utiliser l'événement "onUserAfterLogin"?

Je veux que mes utilisateurs reçoivent un email lorsqu'ils se connectent pour la première fois. Je pense créer un tableau pour stocker les ID utilisateur qui se sont connectés auparavant. Lorsque les utilisateurs se connectent, comparez leur ID utilisateur avec le tableau. S'il se trouve dans le tableau, ne faites rien. Si ce n'est pas le cas, ajoutez l'ID dans le tableau et générez le courrier électronique. La question est de savoir quel est le meilleur endroit pour faire cette comparaison. Je pense que cela devrait être juste après qu'un utilisateur se connecte et trouve cet événement onUserAfterLogin sur https://docs.joomla.org/Plugin/Events/User . Mais comment puis-je l'utiliser? Et devrais-je classer ce que je veux faire comme plugin?

1
shenkwen

Oui, écrire un plugin et tirer parti de l'événement onUserAfterLogin semble être le meilleur moyen.

En ce qui concerne la vérification de la première visite:

  1. Vous pouvez vérifier la colonne lastvisitDate de l'utilisateur pour un 0000-00-00 00:00:00 valeur telle que discutée dans ceci Discussion du forum Joomla: premier plugin de redirection de connexion . Toutefois, en cas d'erreur dans la livraison du courrier électronique, vous devrez ajouter un élément supplémentaire pour savoir comment vous souhaitez être averti de l'échec.

  2. Vous pouvez créer une nouvelle table de base de données dans laquelle vous gardez une trace de tous les utilisateurs envoyés par courrier électronique. Ensuite, à partir du plug-in, interrogez l'ID de l'utilisateur sur cette table. Si la ligne existe, vous ne recevrez plus jamais d'e-mail. Si l'envoi de l'e-mail échoue, ne l'ajoutez pas à la liste.

1
mickmackusa