You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用WP Mail SMTP与wp_mail()发送邮件时出现无效头错误求助

解决WP Mail SMTP触发invalid_parameter: Invalid headers错误

你的问题核心是邮件头格式不符合SMTP规范,结合代码来看主要有两个问题:

  1. From头末尾的多余分号
    原代码里From: $email;末尾的分号是无效字符,邮件头字段不允许附带这类符号,WP Mail SMTP的校验逻辑会将其判定为非法参数。

  2. 换行符不规范
    邮件头要求必须用\r\n(CRLF)分隔各个字段,你代码里的换行写法存在格式问题,恰好插件在1月25日前后的更新收紧了校验规则,导致之前能正常运行的代码现在触发错误。

修正后的代码如下:

$headers = "From: $email" . PHP_EOL;
$headers .= "MIME-Version: 1.0" . PHP_EOL;
$headers .= "Content-Type: text/html; charset=UTF-8";

if (wp_mail($to, $subject, $message, $headers, $attachments)) {
    echo "<h3 style='color:green; text-align: center;'>Email sent!</h3>";
}

额外排查建议:

  • 确认$email变量是合法的邮箱格式,没有包含空格、特殊字符等非法内容
  • 检查WP Mail SMTP插件的版本更新记录,确认是否是版本升级导致的校验规则变更
  • 暂时禁用其他邮件相关插件,排除插件间的冲突可能性

内容的提问来源于stack exchange,提问作者Mārcis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 06:32:05