Hi Support
We are using the wpv-forgot-password-form and custom pages for all the password related pages. I understand that the all the password forms require fully qualified URLs in their shortcodes, with WPML fully qualified translated versions. In this ticket I'm replacing our URL with site-url throughout. All our shortcodes using single quotes for these fully qualified URLs, which I believe is the correct notation.
[wpv-forgot-password-form redirect_url='site-url/en/login' reset_password_url='site-url/en/reset-password']
and translated via WPML is:
[wpv-forgot-password-form redirect_url='site-url/de/anmelden' reset_password_url='site-url/de/passwort-zuruecksetzen']
.
Behaviour in English:
1) User clicks the forgotten password link >> Page site-url/en/lost-password/ is displayed.
2) User enters email and clicks Get New Password button >> Reset password link is correctly sent to the user and the user is redirected to the site-url/en/login/?checkemail=confirm page.
3) User clicks on PW reset link. >> New page opens: site-url/en/reset-password/?action=rp&key=R6cC6v1790qz2GVud8or&login=nativefamily6
4) User enters new PW twice and clicks Reset Password. >> Instead of landing on the page site-url/en/password-reset-successful/, user ends up on some standard WordPress page: site-url/en/wp-login.php?action=lostpassword&error=invalidkey
Steps 5-8 below for English and the German steps are already superfluous to correct desired functionality, but I include them for clarity:
5) Now, the user can (again) request a new PW by entering their email and hitting Get New Password >> Email is sent out.
6) The new link from the WordPress standard page is formed differently:
Our custom page generates:
site-url/en/reset-password?action=rp&key=R6cC6v1790qz2GVud8or&login=nativefamily6
The WordPress standard page generates:
site-url/en/wp-login.php?action=rp&key=NPiuadZw7Z7jhufd2Cg3&login=nativefamily6&wp_lang=en_GB
7) User can click the link, taken to the WordPress standard new password creation page, where they can enter a new password and click Save Password. >> An email confirms the password has been changed and the user sees a Log in link on the standard WordPress page.
8) User clicks Log in link and is logged in to the WordPress backend (our users should never have access to the WP back end). Indeed, the Custom Code Snippet disable-admin-bar-for-non-admins should prevent the admin bar from appearing for non-admin users.
Behaviour in German:
1) Same, German page shown: site-url/de/passwort-vergessen/
2) Same, email sent out in German to user. User redirected to: site-url/de/anmelden/?checkemail=confirm
3) User clicks on PW reset link. >> New page opens for 1-2 seconds in German: site-url/de/passwort-zuruecksetzen/?action=rp&key=kNw1YsRiyFmlCA8VWNe7&login=nativefamily6
but is then (falsely) redirected to the English version:
hidden link
4) User can only continue in English. Clicking the German language flag to go back to German results in the URL losing all its arguments, like so: site-url/de/passwort-zuruecksetzen/
Kind regards
Simon
Hi
In hindsight, it may be the wpv-reset-password-form which is misbehaving, if so please change this post title to: "wpv-reset-password-form not working correctly".
The wpv-reset-password-form code we are using is:
English:
[wpv-reset-password-form redirect_url='site-url/en/password-reset-successful' redirect_url_fail='site-url/en/password-reset-failed']
German:
[wpv-reset-password-form redirect_url='site-url/de/passwort-zuruecksetzen-erfolgreich' redirect_url_fail='site-url/de/passwort-zuruecksetzen-fehlgeschlagen']
Sorry for any confusion caused.
Kind regards
Simon
Hello,
I assume we are talking about the step 4) you mentioned above:
user ends up on some standard WordPress page: site-url/en/wp-login.php?action=lostpassword&error=invalidkey
The problem you mentioned above is abnormal, please check these:
1) In case it is a compatibility problem, please deactivate all other plugins, and switch to WordPress default theme 2021, deactivate all custom PHP/JS code snippets, and test again
2) Also check if there is any PHP/JS error in your website:
https://toolset.com/documentation/programmer-reference/debugging-sites-built-with-toolset/
Hi Luo
Just letting you know we still need help here (I got a robot reminder that it was going to be closed) but we are having trouble since yesterday logging on to our site, so have to solve that first.
I did do some testing a few days ago and I think it may be WPML related, but I can't confirm until we are able to log in again.
Kind regards
Simon
I can login into your website and see the problem, but your website is using 40 plugins + custom theme + custom codes, so there might be some other compatibility issues in your website, I need your permission to deactivate plugins/theme in your website, please backup your website, then update here
Hi Luo
Our site is backed up automatically every night, please go ahead and deactivate as you need to. We will work around you.
Kind regards
Simon
Hi Luo
I see you updated our Toolset plugins and disabled all but WPML and Toolset for your testing. I had to enable them all again today to continue development. Are you planning on working on that ticket again today? (I usually only work Mondays/Wednesdays/Fridays on this project, so if you want you could work on this ticket on tomorrow, Thursday?
Kind regards
Simon
You can enable them again, I am trying to reproduce the same problem in my localhost, will update here if find anything
I have tried it in the same settings in my localhost with a fresh WP installation + the latest version of Toolset plugins + WPML plugins, it works fine:
After submit the reset password form of second language, it redirect me to the success page of correct second language, so I have to debug the problem in your staging site again, please update here when your staging site is ready for debug again.
HI Luo
Today would be a good day to test this. I usually work on this project Mon Wed and Fri, so Tue and Thu are good days for Toolset to work on the site if necessary.
Kind regards
Simon
Hi,
Just wanted to update you that Luo is on vacation and will be back tomorrow.
He'll follow up on this ticket, as soon as he is back.
Thank you for your patience.
regards,
Waqar
Hi Luo
Hope you had a good holiday! 🙂
Today (Thursday) would be a good today to test this on our site as I'll be working on another project.
Kind regards
Simon
Hi Luo
I've noticed there are unusually long delays between responses on my open tickets with you. I've been on holiday for 9 days and had hoped that you would've been able to use that time while I was away but I don't think any progress has been made at all since I was away. Can you please let me know if there is any particular reason for this?
I'm not working on our site today, so it would be an ideal day for you to make some progress regarding the testing of the password forms.
Thanks and regards
Simon
Sorry for the delay answer, please update here if your staging website is ready for debug tomorrow.
Hi Luo
Yes our site is available tomorrow, Thursday, for you to test on.
Kind regards
Simon