【发布时间】:2014-12-22 21:30:27
【问题描述】:
我刚刚更新到 Woocommerce 的 2.2.7 版(使用 WP 4.0),我在重置密码时遇到了问题。
使用测试客户帐户,我使用“丢失密码”链接,输入地址后,我会收到电子邮件。
唯一的问题是电子邮件中的链接只是将我带到登录页面并且没有重置密码。
有人遇到过这个问题吗?
【问题讨论】:
标签: wordpress woocommerce
我刚刚更新到 Woocommerce 的 2.2.7 版(使用 WP 4.0),我在重置密码时遇到了问题。
使用测试客户帐户,我使用“丢失密码”链接,输入地址后,我会收到电子邮件。
唯一的问题是电子邮件中的链接只是将我带到登录页面并且没有重置密码。
有人遇到过这个问题吗?
【问题讨论】:
标签: wordpress woocommerce
为了不浪费我的时间,我在我的 function.php 文件中使用了这段代码来解决这个问题。
add_filter( 'lostpassword_url', 'wdm_lostpassword_url', 10, 0 );
function wdm_lostpassword_url() {
return site_url('/wp-login.php?action=lostpassword');
}
【讨论】:
我们的密码重置现在遇到了格式不正确的 URL。
https://mo.../my-account/lost-password/?key=IMrwE2FnskfDp9pBPpkn&id=316
注意 & 如果我们在 URL 中手动将其交换为和与号 (&),则表单会正确加载。
我们现在正在挖掘 Github 中的提交,看看它何时被破坏。
【讨论】:
如果您的主机正在缓存http://example.com/my-account/lost-password/ 页面,您还可以进入重置密码循环(单击电子邮件中的重置链接会将您带到要求您再次输入电子邮件/用户名而不是显示密码重置表单的表单)。我通过请求支持将此 URL 添加到缓存排除列表中,通过 WPEngine 上的客户端站点解决了这个问题,问题立即消失了。
编辑:这里有一个更好的解释https://wordpress.org/support/topic/woocommerce-password-reset-issue-resolved/ - 请注意支持代理在哪里说“我对 ^/my-account 路径上的所有内容都做了清漆排除”。
【讨论】:
今天发生在我身上,原来是与主题冲突,我不得不使用这个网址:
http://example.com/?login=example.com&action=lost_password
而不是 woocommerce 的默认设置:
http://example.com/my-account/lost-password/
得到了这个问题的帮助:
这显然不会帮助你,OP,因为你解决了你自己的问题,但我希望它可以帮助其他人,因为我通过谷歌搜索遇到了这个问题:)
【讨论】:
我发现了问题 -
我发现这是因为 mytheme/woocommerce/emails 中的文件已过期。
Woocommerce 系统状态显示它们是最新的,但是当我从 woocommerce 的最新升级复制模板文件以覆盖我的时,它解决了问题(Github 也显示了一些编辑,证实了这一点)。
【讨论】: