wordpress注册邮件链接无效,无法激活账户的问题

举报
米米素材网 发表于 2023/06/13 05:54:04 2023/06/13
【摘要】 我们用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 = __('有人要求重设如下帐号的密码:'). "

"; $msg .= network_site_url() . "

"; $msg .= sprintf(__('用户名:%s'), $user_login) . "

"; $msg .= __('若这不是您本人要求的,请忽略本邮件,一切如常。') . "

"; $msg .= __('要重置您的密码,请打开下面的链接:'). "

"; $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') . ">
";

改为

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

在330行的样子

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

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

20191006141517.jpg

解决办法

在网站的wp-includes文件夹中找到pluggable.php文件并打开 
找到如下语句:

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

改为

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

";

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

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。