Ce sujet est résolu. Voici une description du problème et de la solution.
Problem:
The client was experiencing issues with custom login functionality on two pages after installing WPML. The login worked fine when WPML was deactivated. The issue was related to Ajax calls to admin-ajax.php for user authentication.
Solution:
We reviewed the custom code used for the login process and identified an issue with the
do_action('wp_login', $user->user_login, $user->ID)
hook. According to the WordPress developer documentation, the second parameter should be
$user
, not
$user->ID
. We recommended updating the action hook to
do_action('wp_login', $user->user_login, $user)
to resolve the problem.
If you're experiencing this issue, we recommend you try updating the action hook as described above. However, this solution might be irrelevant if it's outdated or not applicable to your case. We highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If the problem persists, please open a new support ticket with us.
Il s'agit du forum d'assistance technique de WPML, le plug-in multilingue pour WordPress.
Il est accessible à tous, toutefois seuls les clients de WPML peuvent y publier leurs messages. L'équipe du WPML répond sur le forum 6 jours par semaine, 22 heures par jour.
Aucun de nos assistants n'est disponible aujourd'hui sur le forum French. Veuillez créer un ticket, et nous nous le traiterons dès notre prochaine connexion. Merci de votre compréhension.
Marqué : Custom Work
Ce sujet contient 23 réponses, a 3 voix.
Dernière mise à jour par Ilyes Il y a 1 semaine et 5 jours.
Assisté par: Ilyes.
Auteur | Articles |
---|---|
Avril 11, 2024 à 1:20 pm #15509511 | |
michelleL-20 |
Bonjour, J'ai un soucis depuis que j'ai installé WPML : la connexion depuis 2 pages avec un custom login ne fonctionne plus. Bonne journée, |
Avril 12, 2024 à 2:44 pm #15513299 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Bonjour, Malheureusement les codes personnalisés n'entrent pas dans le cadre de notre politique de support. Nous faisons notre mieux pour aider nos clients mais si vous avez besoin d'une aide afin de créer un code personnalisé, je vous suggère d'envisager de contacter l'un de nos partenaires certifiés sur ce lien: http://wpml.org/documentation/support/wpml-contractors/ J'ai tout de même testé et je vois que l'erreur est "Password incorrect". C'est une piste à suivre. Aussi, essayez peut être de passer wp_set_current_user et wp_set_auth_cookie avant wp_login. |
Avril 15, 2024 à 8:09 pm #15521775 | |
michelleL-20 |
Bonjour Nicolas, Je ne penses pas que nous soyons en mesure de passer par un expert. Pour vous donner un peu plus d'informations j'ai exactement cette erreur dans la console, non pas une erreur de mot de passe. J'ai essayé comme vous m'avez dis de passer wp_set_current_user et wp_set_auth_cookie avant wp_login mais cela n'a rien changé. J'ai également pensé a un conflit de plugins mais en désactivant tous sauf les plugins WooCommerce et Memberpress qui sont la base de mon site et WPML cela ne fonctionne toujours pas. J'ai également essayé en commentant une partie de mon code de functions.php mais rien n'y fait, l'erreur est toujours là. Je suis preneur pour tout autre suggestion. Bonne journée, |
Avril 16, 2024 à 2:38 pm #15526526 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Bonjour, Comme le ticket original est résolu, les identifiants de connexion ont été automatiquement éliminés. Pourriez vous les repartager dans ce ticket afin que je puisse le faire remonter à notre équipe de deuxième niveau pour avoir leur feedback? J'active le champ privé. |
Avril 18, 2024 à 5:49 pm #15540521 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Bonjour, Je viens de faire le test avec WPML et String Translation désactivés et j'ai toujours la même erreur "Incorrect password." - Aussi bien sur la page login que checkout. Et je n'ai pas la même erreur que vous dans Console, à la place j'ai: Vidéo: lien caché |
Avril 22, 2024 à 1:10 pm #15550672 | |
michelleL-20 |
Bonjour Nicolas, Il se peut que l'erreur que vous avez eu soit cause par une erreur dans mon code empêchant l'envoi de caractères spécials dans le champ de mots de passe. De mon côté voici l'erreur que j'obtiens : Bonne journée, |
Avril 22, 2024 à 10:43 pm #15553167 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Bonjour, Oui maintenant j'ai les mêmes résultats que vous. Je viens de faire remonter le ticket avec tous les détails au support de deuxième niveau. Je reviens vers vous dès que j'ai une réponse de leur part. Nico |
Avril 23, 2024 à 12:36 pm #15555903 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Bonjour, J'essaie d'activer WP_DEBUG pour en savoir plus sur cette erreur 500 cependant je ne peux pas éditer, renommer ou remplacer le fichier wp-config.php sur le site staging. Pourriez vous le faire vous même? - Accédez à votre serveur via FTP et ouvrez wp-config.php (à la racine de votre installation WordPress). define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false ); PS: si vous avez déjà define( 'WP_DEBUG', false); changez le pour "true" pour ne pas le déclarer deux fois. Plus d'info: https://wordpress.org/support/article/debugging-in-wordpress/ |
Avril 23, 2024 à 2:59 pm #15557060 | |
michelleL-20 |
Bonjour, Oui c’est vrai que notre hébergeur ne nous permet pas de modifier ce paramètre depuis le fichier wp-config mais uniquement depuis le backoffice de l’hébergeur. Bonne fin de journée, |
Avril 23, 2024 à 4:21 pm #15557447 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Re, Désolé mais sur le site staging sur lequel nous travaillons, WP_DEBUG est toujours défini comme "false" Veuillez ajoutez ces lignes là: define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false ); Afin que le fichier de debug se créé lorsque l'erreur se produit. |
Avril 24, 2024 à 9:03 am #15559616 | |
michelleL-20 |
Re, Oups petite erreur. Bonne journée, |
Avril 24, 2024 à 1:36 pm #15561009 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
HI, I'm sorry but WP_DEBUG_LOG is not yet set to true, so I don't have a debug.log file to check those errors. I checked and you only added the first line out of 3: define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false ); We need to log those errors to understand the root cause. |
Avril 24, 2024 à 5:38 pm #15562388 | |
michelleL-20 |
Hi, My hoster juste set the config file like you asked. Best regards |
Avril 24, 2024 à 8:31 pm #15562670 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Merci! Effectivement il y a une erreur liée à WPML, il y a un problème d'arguments PHP Fatal error: Uncaught TypeError: Argument 2 passed to WPML_User_Language::update_user_lang_from_login() must be an instance of WP_User, int given J'ai remonté toutes les informations à l'équipe de deuxième niveau. Je reviens vers vous lorsque j'ai une réponse. |
Avril 25, 2024 à 1:25 pm #15565904 | |
Nicolas Viallet Supporter
Les langues: Anglais (English ) Français (Français ) Fuseau horaire: America/Lima (GMT-05:00) |
Bonjour, Il semble que dans votre code personnalisé vous passez le USER ID au lieu de l'objet USER. Probablement lié à cela: $user = wp_signon($login_data, is_ssl()); Notre code est accroché au hook "wp_login" (et wp_signon l'appelle à un stade ultérieur). Pourrais-je prendre une copie Duplicator de votre site pour notre équipe de dev? Une fois le problème résolu, j'éliminerai cette copie. Dites moi si vous êtes d'accord. |