前言
wordpress自带用户注册功能,但是当用户注册时,无法收到验证邮件,本教程就是解决如何此问题!
解决方案
首先找到主题模板函数文件functions.php
添加代码,修改成自己的邮箱信息。
// 邮箱验证 function mail_smtp( $phpmailer ){ $phpmailer->From = "admin@****.com"; //发件人 $phpmailer->FromName = "分享吧"; //发件人昵称 $phpmailer->Host = "smtp.qq.com"; //SMTP服务器地址(比如QQ是smtp.qq.com,腾讯企业邮箱是smtp.exmail.qq.com,阿里云是smtp.域名,其他自行咨询邮件服务商) $phpmailer->Port = 25; //SMTP端口,常用的有25、465、587,SSL加密连接端口:465或587,qq是25,qq企业邮箱是465 $phpmailer->SMTPSecure = ""; //SMTP加密方式,常用的有ssl/tls,一般25端口不填,端口465天ssl $phpmailer->Username = "admin@****.com"; //邮箱帐号,一般和发件人相同 $phpmailer->Password = '*********'; //邮箱密码 $phpmailer->IsSMTP(); //使用SMTP发送 $phpmailer->SMTPAuth = true; //启用SMTPAuth服务 } add_action('phpmailer_init','mail_smtp');
发送邮件验证如图:
点击上面链接,设置自己的密码就OK了
注意:
如果设置密码或者找回密码时提示 您的密码重设链接无效,请在下方请求新链接。
这是因为wordpress在链接前后加了”<>”默认链接到了后面的”>”
解决方法:
找到文件pluggable.php,在根目录/wp-includes/pluggable.php。
修改
$message .= '<' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user->user_login), 'login') . ">\r\n\r\n";
修改为
$message .= '' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user->user_login), 'login') . "\r\n\r\n";
接着找到文件wp-login.php,在根目录/wp-login.php
修改
$message .= '<' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . ">\r\n";
修改为
$message .= '' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . "\r\n";
结束
评论前必须登录!
注册