WordPress 邮件系统定制:wp_mail 与 SMTP 配置详解

WordPress 默认使用 PHP mail() 函数发送邮件,但这种方式在很多主机上不可靠,邮件容易进入垃圾箱。本文介绍如何定制 WordPress 邮件系统,配置 SMTP 发送,提高邮件送达率。

wp_mail() 函数

WordPress 所有邮件都通过 wp_mail() 发送:wp_mail($to, $subject, $message, $headers, $attachments);。$headers 可以设置发件人、抄送、密送和内容类型(HTML 邮件需要设置 Content-Type: text/html)。

使用 phpmailer_init 钩子配置 SMTP

通过 phpmailer_init 钩子配置 SMTP:add_action('phpmailer_init', function($phpmailer){ $phpmailer->isSMTP(); $phpmailer->Host = 'smtp.gmail.com'; $phpmailer->SMTPAuth = true; $phpmailer->Port = 587; $phpmailer->Username = 'your@gmail.com'; $phpmailer->Password = 'your_app_password'; $phpmailer->SMTPSecure = 'tls'; });

推荐 SMTP 插件

WP Mail SMTP——最流行的 SMTP 插件,支持 Gmail、Outlook、SendGrid、Mailgun 等。FluentSMTP——免费开源,支持多 SMTP 提供商。Post SMTP——提供邮件日志功能,方便排查问题。

HTML 邮件模板

使用 wp_mail_content_type 过滤器设置 HTML 格式:add_filter('wp_mail_content_type', function(){ return 'text/html'; });。建议使用内联 CSS 样式,因为很多邮件客户端不支持外部样式表。

总结

配置 SMTP 是提高 WordPress 邮件送达率的最有效方法。选择可靠的 SMTP 服务商(如 SendGrid、Mailgun),配合邮件日志插件,确保重要邮件不丢失。

评论
暂无评论