填写您的邮件地址,订阅我们的精彩内容:

WordPress重置密码点击邮件内容中重置链接”key似乎无效”的解决办法

726

这是今天遇到的一个问题,在用户使用自己的Email重置WordPress密码时,会收到一封密码重置的邮件,里面包含重置链接。但是邮件内容中会用一对尖括号把URL括起来,从而导致文本链接最后包含了后面的半个尖括号,用户点击URL就会提示“key似乎无效”,无法进行密码重置。

解决的办法也很简单,通过修改wp-login.php文件中的邮件发送信息即可:

$message .= '<' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . ">rn";

这句中的尖括号去掉即可。为了简洁化,我们可以把整句改为:

$message .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . " rn";

不过这样又会有一个坏处,下次你更新WordPress系统之后,需要自己手动再改一次。如果你不想改,可以使用一个add_filter来实现。由于我没有具体操作过,我下面只是给个思路,你不要照抄过去。

add_filter('network_site_url','function_filter');
function function_filter($url){
    if($GLOBALE['page']=='wp-login.php'){
        return '  '.$url.'  ';
    }
}

如果这个filter存在的话,那么当前页面是登录页面的时候,就在返回URL的时候前后都加一个空白,这样文本URL就不会和尖括号连在一起了。不过这个方面没有经过实验,能否成功未知。

下面我简单说几句