使用 SMTP 发送邮件的理由有:
1. 很多虚拟主机禁用了 mail 函数,根本发不了邮件。
2. 服务器默认的发件地址又很大几率会被拦截。
3. 使用企业邮箱发邮件更高大上。
但是对于很多和我一样不喜欢使用插件的人来说,很多 SMTP 插件不好用,而且有的还报错。
所以无插件使用 SMTP 发送邮件的方法,将下列代码修改一下加入到 functions.php 文件即可:
- //使用 smtp 发邮件
- function mail_smtp( $phpmailer ) {
- $phpmailer->IsSMTP();
- $phpmailer->SMTPAuth = true;//启用 SMTPAuth 服务
- $phpmailer->Port = 465;//MTP 邮件发送端口,这个和下面的对应,如果这里填写 25,则下面为空白
- $phpmailer->SMTPSecure ="ssl";//是否验证 ssl,这个和上面的对应,如果不填写,则上面的端口须为 25
- $phpmailer->Host = "smtp.exmail.qq.com";//邮箱的 SMTP 服务器地址,如果是 QQ 的则为:smtp.exmail.qq.com
- $phpmailer->Username = "admin@ashuwp.com";//你的邮箱地址
- $phpmailer->Password ="********";//你的邮箱登陆密码
- }
- add_action('phpmailer_init', 'mail_smtp');
- //下面这个很重要,得将发件地址改成和上面 smtp 邮箱一致才行。
- function ashuwp_wp_mail_from( $original_email_address ) {
- return 'admin@ashuwp.com';
- }
- add_filter( 'wp_mail_from', 'ashuwp_wp_mail_from' );
END.