WooCommerce邮件发送故障
WooCommerce 店铺下单后收不到订单通知邮件,多数不是网站坏了,而是 WordPress 默认使用 PHP mail 发送邮件,很多云服务器和虚拟主机屏蔽了 25 端口或没有安装邮件组件,导致发出去的邮件直接被丢弃。
解决办法是让 WordPress 改用 SMTP 协议,通过 QQ 邮箱、163 邮箱或企业邮箱等邮件服务商发信。
下面按零基础可操作的方式,教你怎么配置 SMTP 并验证修复结果。
先确认问题是不是出在发信通道
打开 WordPress 后台,在“插件”里安装并启用 WP Mail SMTP 插件。
进入“设置 -> WP Mail SMTP”,找到“发送测试邮件”。
填一个你正在使用的邮箱,点击发送。
如果提示全部成功,说明邮件服务正常;
如果出现 SMTP connect() failed 或 timeout,说明发信通道确实有问题。
配置前需要准备的信息
准备一个可以发信的邮箱,比如 QQ 邮箱、163 邮箱或企业邮箱。
需要在邮箱后台开启 SMTP 服务并生成授权码,注意授权码不是邮箱登录密码。
同时记好 SMTP 服务器地址、端口和加密方式,例如 QQ 邮箱的 SMTP 地址是 smtp.qq.com,端口 465 或 587,这些信息以邮箱服务商页面显示为准。
用 WP Mail SMTP 完成配置
在 WP Mail SMTP 插件的“常规设置”里,按下面步骤填写:
- 发件人邮箱:填你开启 SMTP 的那个邮箱地址。
- 发件人名称:填店铺名称,比如“XX 商城”。
- 邮件发送方式:选择“其他 SMTP”。
- SMTP 主机:填 smtp.qq.com 或你的服务商地址,不要加 https://。
- SMTP 端口:填 465 或 587。
- 加密方式:端口 465 选 SSL,端口 587 选 TLS。
- 自动身份验证:开启。
- 用户名:填完整邮箱地址。
- 密码:填邮箱后台生成的 SMTP 授权码。
保存设置后,回到“测试邮件”页,把“发件人”换成你的收件邮箱,再次发送测试。
如果提示成功,邮件就出现在收件箱里,偶尔会进垃圾箱,可以顺手标记为“不是垃圾邮件”。
避坑:授权码、端口和防火墙
最容易出错的是三个地方。
第一,很多用户把邮箱登录密码当 SMTP 密码,导致验证失败,必须使用邮箱服务商生成的授权码。
第二,端口选择要根据服务商支持来确定,阿里云、腾讯云等服务器默认可能屏蔽 25 端口,可以用 465 或 587 绕过。
第三,如果配置完全正确但显示连接超时,请检查服务器安全组或宝塔防火墙是否放行了对应端口。
真实下单验证订单邮件
完成测试邮件后,建议真实下单一次。
打开 WooCommerce 店铺,用另一个账号或访客身份下一笔订单,同时留意网站管理员邮箱、顾客邮箱。
下单后,如果两个邮箱都收到了订单通知邮件,说明问题已解决。
如果仍有个别邮件丢失,可以检查 WooCommerce 的邮件设置里发件人是否和 SMTP 配置一致。
配置完成后,整站包括新订单通知、客户邮件、密码重置邮件都会统一走 SMTP 发送。
以后再遇到 WooCommerce 邮件收不到,优先检查授权码、端口和服务器防火墙这三项即可。