I've just updated to the version 2.2.7 of Woocommerce (using WP 4.0) and I'm having trouble getting the password reset to work.
Using a test customer account, I use the 'Lost Password' link, and once I've entered my address I receive the e-mail.
Only problem is the link in the email just takes me to the login page and doesn't reset the password.
Anyone had this issue?
I discovered the issue -
I found it was because the files in mytheme/woocommerce/emails were out of date.
The Woocommerce system status said they were up to date but when I copied the template files from the latest upgrade of woocommerce to override mine, it fixed the issue (Github showed some edits as well which confirmed this).
You can also get into a reset password loop (clicking reset link in email takes you to the form asking you to enter your email/username again instead of showing password reset form) if your host is caching the http://example.com/my-account/lost-password/ page. I resolved this with a client site on WPEngine by asking support to add this URL to the cache exclusions list and the problem immediately went away.
Edit: an even better explanation is here https://wordpress.org/support/topic/woocommerce-password-reset-issue-resolved/ -- Note where the support agent says “I did a Varnish exclusion for everything along the path of ^/my-account” .
Happened to me today, turns out it was a conflict with a theme, and I had to use this url:
http://example.com/?login=example.com&action=lost_password
Instead of the woocommerce's default:
http://example.com/my-account/lost-password/
Was helped by this issue:
https://themeforest.net/item/clever-course-learning-management-system-theme/8645312/comments?page=22&filter=all#comment_10485207
This will obviously not help you, OP, as you solved your own issue, but I hope it might help someone else as I tumbled on this question through a google search :)
Our password resets are coming across with improperly formed URL now.
https://mo.../my-account/lost-password/?key=IMrwE2FnskfDp9pBPpkn&id=316
Note the & if we swap this manually in the URL to and ampersand (&) then the form loads properly.
We are now digging through the commits in Github to see when this was broken.