wordpress注册邮件链接无效问题解决方法-利剑分享-科技生活
利剑分享-科技生活-利剑分享-科技生活
利剑分享-科技生活

wordpress注册邮件链接无效问题解决方法

wordpress注册邮件链接无效问题解决方法

我们用wordpress建站的时候,经常会遇到,用户注册收到的邮件链接无效,无法激活账户的问题。

下面给大家分别介绍对应问题和解决方案。

第一种情况是在用户注册的时候收到激活邮件:

点击链接却显示无效无法激活,检查链接会发现链接地址后面多出一个>

邮箱识别错误,导致点击出错。

可以通过下面两种方法来解决。

第一种方法:

直接在主题函数:function.php中加入下面代码就可以了

function reset_password_message( $message, $key ) { if ( strpos($_POST['user_login'], '@') ) { $user_data = get_user_by('email', trim($_POST['user_login'])); } else { $login = trim($_POST['user_login']); $user_data = get_user_by('login', $login); } $user_login = $user_data->user_login; $msg = __('有人要求重设如下帐号的密码:'). "rnrn"; $msg .= network_site_url() . "rnrn"; $msg .= sprintf(__('用户名:%s'), $user_login) . "rnrn"; $msg .= __('若这不是您本人要求的,请忽略本邮件,一切如常。') . "rnrn"; $msg .= __('要重置您的密码,请打开下面的链接:'). "rnrn"; $msg .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') ; return $msg; } add_filter('retrieve_password_message', reset_password_message, null, 2);

第二种方法:

直接修改文件: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') ;

在330行的样子

也就是把’<‘ .和. “>rn”去掉,但是升级后修改会被替换,所以建议使用第一种方法。

第二种情况是在用户修改用户和重置密码的时候出现

20191006141517.jpg

解决办法

在网站的wp-includes文件夹中找到pluggable.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->user_login), 'login') . "rnrn";

就可以正常显示正确的链接了。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享