@boldproducts, We encountered the same issue and realized that it was not caused by the plugin or Woocommerce itself, but rather because we had changed the default login URL using a plugin.
We resolved this problem by customizing the default “password reset” email template and modifying it to use our custom login URL into it.
You can test this fix by adding the following code to your functions page:
// Override the password reset email URL add_filter( 'retrieve_password_message', 'custom_password_reset_url', 10, 4 ); function custom_password_reset_url( $message, $key, $user_login, $user_data ) { // Replace the default reset URL with your custom login URL $reset_url = site_url('/your-custom-login-page?action=rp&key=' . $key . '&login=' . rawurlencode($user_login)); // Customize the email message $message = __('Someone has requested a password reset for the following account:', 'your-text-domain') . "\r\n\r\n"; $message .= sprintf(__('Username: %s', 'your-text-domain'), $user_login) . "\r\n\r\n"; $message .= __('If this was a mistake, ignore this email and nothing will happen.', 'your-text-domain') . "\r\n\r\n"; $message .= sprintf(__('To reset your password, visit the following address: %s', 'your-text-domain'), $reset_url) . "\r\n\r\n"; return $message; }
Replace “your-custom-login-page” with your custom login URL and “your-text-domain” with your domain name.
Hope this helps.
Cheers, Han.