• 首页
  • >
  • 插件和非插件实现wordpress发送邮件
  • >
  • 正文

插件和非插件实现wordpress发送邮件

62次阅读

WordPress 博客程序默认的邮件发送方式是mail函数,这个函数只有在Linux下才能用!国内很多主机都是windows的,导致 WordPress 程序在使用过程中不管是回复、注册都不能正常收到邮件,下面我们用三种方法来调试 WordPress 发送邮件!分别是插件、修改主题、修改 WordPress 程序。

1、插件wp-mail-smtp

这个插件在wordpress中非常使用,而且现在是中文版的!设置方面就不用说了!

2、修改主题代码

在主题functions.php中添加代码,让程序实现SMTP发信,代码如下:添加到在主题 functions.php 中!

function mail_smtp($phpmailer){
$phpmailer->IsSMTP();
$phpmailer->SMTPAuth = true; //启用SMTPAuth服务
$phpmailer->Port = 465; //SMTP邮件发送端口,这个和下面的对应,如果这里填写25,则下面为空白
$phpmailer->SMTPSecure = "ssl"; //是否验证 ssl,这个和上面的对应,如果不填写,则上面的端口须为25
$phpmailer->Host = "smtp.163.com"; //邮箱的SMTP服务器地址,如果是QQ的则为:smtp.exmail.qq.com
$phpmailer->Username = "*****@163.com"; //邮箱地址
$phpmailer->Password = "*******"; //邮箱密码
}
add_action('phpmailer_init','mail_smtp');

3、修改wordpress默认值

修改 wp-includes 目录下的 pluggable.php 和 class-phpmailer.php 文件(仅适用于WP3.0以上版本)

第一步:在pluggable.php中搜索如下代码:

$phpmailer->IsMail();

改为:

$phpmailer->IsSMTP();

第二步:在 class-phpmailer.php 中配置如下信息:

$Mailer = 'smtp';
$Host = 'smtp.163.com'; //邮箱的SMTP服务器地址
$Port = 465; //SMTP邮件发送端口。一般默认为25,示例用的是465
$SMTPSecure = "ssl"; //是否验证ssl
$SMTPAuth = true; //开启SMTP
$Username = 'xxxx@163.com'; //邮箱地址
$Password = '******'; //邮箱密码

使用这个三个方法一定会解决wordpress发送邮件不成功的问题的!

示例:

/** mail函数被禁用 **/
function mail_smtp( $phpmailer ){
$phpmailer->From = "admin@wpahz.com"; //发件人
$phpmailer->FromName = "WP爱好者官方邮箱"; //发件人昵称
$phpmailer->Host = "smtp.qq.com"; //SMTP服务器地址
$phpmailer->Port = 465; //SMTP端口,常用的有25、465、587,具体谷歌百度
$phpmailer->SMTPSecure = "ssl"; //SMTP加密方式,常用的有SSL/TLS,具体谷歌百度
$phpmailer->Username = "admin@wpahz.com"; //邮箱帐号
$phpmailer->Password = '*********'; //邮箱密码
$phpmailer->IsSMTP(); //使用SMTP发送
$phpmailer->SMTPAuth = true; //启用SMTPAuth服务
}
add_action('phpmailer_init','mail_smtp');

作者:管理员  修订  2019/09/19 17:19:14

WP爱好者专注WordPress在线系统培训,10年来超过十万学员在此获得技术提升和人脉圈子。

WordPress课程已融入到移动搜索、零基础建站、WP爱好者开源主题模板、SEM入门等。

欢迎添加助教微信:tc199361,马上获得优秀学员案例。