使用 SMTP 发送邮件的理由有:

1. 很多虚拟主机禁用了 mail 函数,根本发不了邮件。

2. 服务器默认的发件地址又很大几率会被拦截。

3. 使用企业邮箱发邮件更高大上。

但是对于很多和我一样不喜欢使用插件的人来说,很多 SMTP 插件不好用,而且有的还报错。

所以无插件使用 SMTP 发送邮件的方法,将下列代码修改一下加入到 functions.php 文件即可:

  1. //使用 smtp 发邮件
  2. function mail_smtp( $phpmailer ) {
  3.   $phpmailer->IsSMTP();
  4.   $phpmailer->SMTPAuth = true;//启用 SMTPAuth 服务
  5.   $phpmailer->Port = 465;//MTP 邮件发送端口,这个和下面的对应,如果这里填写 25,则下面为空白
  6.   $phpmailer->SMTPSecure ="ssl";//是否验证 ssl,这个和上面的对应,如果不填写,则上面的端口须为 25
  7.   $phpmailer->Host = "smtp.exmail.qq.com";//邮箱的 SMTP 服务器地址,如果是 QQ 的则为:smtp.exmail.qq.com
  8.   $phpmailer->Username = "admin@ashuwp.com";//你的邮箱地址
  9.   $phpmailer->Password ="********";//你的邮箱登陆密码
  10. }
  11. add_action('phpmailer_init', 'mail_smtp');
  12. //下面这个很重要,得将发件地址改成和上面 smtp 邮箱一致才行。
  13. function ashuwp_wp_mail_from( $original_email_address ) {
  14.     return 'admin@ashuwp.com';
  15. }
  16. add_filter( 'wp_mail_from', 'ashuwp_wp_mail_from' );

END.