WooCommerce 邮件故障排查

某些问题会让 WooCommerce 商店无法发送邮件,或让顾客收不到邮件。本指南介绍常见原因,以及诊断和解决步骤。

WooCommerce 默认通过 WordPress 核心函数 wp_mail() 发信。因此许多“未发送”问题并非 WooCommerce 没有生成邮件,而是托管服务器的邮件功能或后续环节出了问题。

邮件问题也常常是送达问题:服务器已经发送,但收件人没有收到。无论原因是什么,都会让商家和顾客困扰。

可同时参考 WooCommerce 的邮件工作原理与 SMTP 服务商文档,以及邮件身份验证与发件人要求文档。

先核对邮件配置

收到订单,却没有邮件

深入排查前,先确认此时本来就应该发送邮件:未付款、仍为 Pending Payment 的订单不会触发邮件;邮件设置中禁用了对应类型,也不会发出。

确认是否等待付款

新订单处于 Pending Payment 时,不发送相关订单邮件。

付款未成功:顾客可能提交订单后离开外部支付页面,例如 PayPal,或者银行卡交易被拒绝。具体行为取决于网关。

付款已成功:如果已经收款,订单仍为 Pending Payment,说明订单未更新,可能是网关无法与网站通信。此时应排查支付网关,阅读其文档并按需联系支持。

如果仍使用已弃用、停止支持的 PayPal Standard,遇到付款成功但订单状态未变,请查阅其专门排查页面。

错误阻止状态变化:主题、自定义代码或其他插件的冲突,可能在订单状态更新前触发错误,因此不会发邮件。可以查看 WooCommerce 致命错误日志,并停用除 WooCommerce 与默认主题以外的插件、扩展和主题,在默认状态下尝试重现,排除冲突。

检查邮件设置

订单成功进入 Processing 后,如果相应通知开启,应生成邮件。

  1. 进入 WordPress 后台。
  2. 打开“WooCommerce > 设置 > 邮件”。
  3. 选择对应模板。
  4. 确保订单通知勾选“启用此邮件通知”。
图片[1]-WooCommerce 邮件故障排查-未完纪

已启用但仍不发送,可能存在冲突。同样应检查致命错误日志,并在只保留 WooCommerce 与默认主题的状态下排查。

判断是否已经发送但未送达

邮件已启用,已付款订单也正确进入 Processing,却收不到时,可能是送达问题,例如被垃圾邮件过滤器拦截。先确认 WooCommerce 是否生成邮件,并交给网站邮件系统。

WooCommerce 自动记录每次事务性邮件尝试,可区分已交付邮件系统、离站前失败,以及没有尝试发送。

查看方法:

  1. 创建测试订单,或触发要检查的邮件。
  2. 进入“WooCommerce > 状态 > 日志”。
  3. 打开或筛选来源 transactional-emails。
  4. 查看对应邮件类型及关联订单、商品或顾客的记录。

结果包括:

  • Sent:成功交给邮件系统,记录级别 INFO。
  • Failed:尝试发送,但网站发信流程返回错误,记录级别 WARNING,通常包含 WordPress 或邮件服务报告的原因。极少数情况下,其他插件的邮件几乎同时失败,状态仍可靠,但原因可能属于另一封邮件。
  • Disabled:该类型在邮件设置中关闭,级别 NOTICE。
  • Skipped:缺少必要条件,例如无收件人,因此未发,级别 NOTICE。

订单邮件的成功与失败尝试,也会记录为私密订单备注;Disabled 和 Skipped 只进入日志。

这些记录遵循现有日志存储、保留期与级别阈值。如果缺少预期记录,检查日志设置是否启用,以及阈值是否隐藏了 INFO 或 NOTICE。

隐私说明:日志不会写入顾客原始邮箱地址。收件人显示为匹配的 WordPress 用户名或 guest,错误消息中的邮箱会被遮盖。

非 WooCommerce 事务性邮件,应查看 SMTP 服务商日志或使用邮件日志插件。

已发送但未收到

可以采取以下措施:

  • 在“WooCommerce > 设置 > 邮件”的 From address 中,使用与网站域名一致的地址。
  • 使用 Gmail、Yahoo 等公共邮箱作为发件地址,可能因声明的发件方与实际服务器不一致而被拦截或归入垃圾邮件。若当前使用个人邮箱,改为已注册的网站域名邮箱。
  • 注册专门的 SMTP 服务商,让它代为发送。普通网站通常可以使用免费额度,可靠性也高于网站服务器自带发信功能。
  • 确认邮件身份验证正确配置,降低被过滤的风险。

失败、禁用、跳过或无记录

根据日志与订单备注采取下一步:Disabled 应重新启用;Skipped 应补足缺失条件,例如收件人;Failed 常指向托管环境或发信设置;本应有记录却没有时,应检查致命错误和冲突。

排查冲突时,停用除 WooCommerce 与默认主题外的扩展、插件、主题,尝试重现问题。

管理邮件与密码重置邮件

transactional-emails 面向 WooCommerce 事务性邮件,WordPress 密码重置和其他管理邮件可能不在其中。应查看 SMTP 服务商日志或邮件日志插件。前述域名、SMTP 与身份验证步骤仍然适用。

问题与支持

免费 WooCommerce 核心插件的支持通过 WordPress.org 社区论坛提供。先搜索已有解答,尚无账户时可以注册。

扩展功能可查看 WooCommerce Marketplace。持续高级支持或定制开发可聘请 Woo Agency Partner;集成或扩展开发者可参阅开发者资源。仍找不到答案时,可使用原文底部反馈按钮。


原文:Email troubleshooting。作者/维护方:WooCommerce 文档团队。本文为中文翻译,代码及命令保留原文。

原站版权声明:© WooCommerce, Inc. 2026。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容