WooCommerce 會按訂單狀態產生新訂單、處理中、完成、取消、退款和客戶帳戶等交易電郵。畫面顯示訂單成功,不代表郵件已送達;流程包括觸發條件、WooCommerce 產生內容、WordPress `wp_mail()`、主機或 SMTP 服務,以及收件端過濾。排查時要確認郵件停在哪一層。
先確認應該觸發哪一封信
不同狀態觸發不同通知。尚未付款的 Pending Payment 訂單通常不會產生已付款相關郵件;成功付款卻一直停留 Pending,問題可能是付款閘道回傳或訂單狀態,而不是電郵本身。
檢查個別通知是否啟用
到 WooCommerce 設定的 Emails 頁,開啟目標通知,確認 Enable 已勾選。管理員通知還要檢查收件人地址,多個地址按介面要求分隔。不要只看全局寄件人設定,因為每種郵件可獨立停用。
使用網域一致的寄件地址
From address 應使用商店自有網域,例如訂單專用地址,而不是 Gmail 或 Yahoo 等公共地址。寄件網域與實際發信服務不一致,較容易被視為偽冒。From name 則使用顧客能辨認的商店名稱。
配置 SPF、DKIM 和 DMARC
在 DNS 為實際 SMTP 或交易郵件服務加入授權記錄,並確認只有一條有效 SPF。DKIM 由寄件服務簽署內容,DMARC 則定義驗證失敗處理和報告。修改後以收到郵件的原始標頭確認通過,而不是只看控制台綠色狀態。
使用可靠 SMTP 或交易郵件服務
WooCommerce 預設經 WordPress `wp_mail()` 交給主機郵件系統,部分主機未正確配置或信譽不足。正式商店應考慮專用 SMTP 或交易郵件供應商,並使用獨立 API 或 SMTP 憑證,不要把主要郵箱密碼寫入外掛。
先建立完整測試訂單
普通「寄送測試信」只能證明基本發信,不能驗證 WooCommerce 狀態流程。使用測試付款方式完成一張訂單,依次檢查新訂單、處理中和完成通知。不要在正式商店反覆產生無法對帳的真實付款。
查看交易電郵日誌
WooCommerce 會記錄交易郵件嘗試,可在狀態日誌中查看 `transactional-emails`。Sent 表示已交給郵件系統,不保證收件匣已接收;Failed 顯示發信層錯誤;Disabled 和 Skipped 則指向設定或缺少條件。
同時查看訂單私人備註
與訂單相關的成功或失敗寄送嘗試可能記錄在私人訂單備註,方便把電郵時間與狀態改變比較。若付款成功時間和訂單更新相隔很久,應調查付款 Webhook、排程或外掛錯誤,不要只重寄通知。
分清產生失敗與送達失敗
若日誌沒有應有項目,先查訂單觸發、通知啟用、致命錯誤和外掛衝突。若顯示 Failed,查看 WordPress 或 SMTP 回傳錯誤。若顯示 Sent 但收不到,則查供應商投遞日誌、退信、垃圾郵件和網域驗證。
檢查垃圾郵件與隔離區
用不同供應商的收件箱測試,不要只寄到同一公司網域。檢查垃圾郵件、隔離和郵件管理員規則。大型附件、可疑連結、全圖片內容或寄件網域信譽不足都可能影響送達。
不要依賴收件人白名單掩蓋問題
把商店加入個人白名單只能改善單一收件者,不能解決所有顧客的驗證和信譽。應從 SMTP 日誌、退信代碼、SPF、DKIM、DMARC 和內容找出根因。活動期間突然增加寄信量亦可能觸發供應商限制。
小心修改郵件模板
新版本 WooCommerce 可調整標誌、字體、顏色和頁尾;舊設定介面可能不同。若以 PHP 覆寫模板,應放在 child theme,並在 WooCommerce 更新後檢查過期模板警告。不要直接修改外掛核心檔案。
確認手機和深色模式可讀
測試標題、按鈕、訂單表格、地址、稅項和頁尾在手機、桌面及深色模式的顯示。圖片需有合適替代文字,重要內容不能只存在圖片。品牌美化不應犧牲訂單金額和付款資訊的清晰度。
建立失敗告警與後備流程
交易郵件失敗會影響顧客信任和店員出貨。設定 SMTP 供應商告警,定期檢查 WooCommerce 日誌,並讓客服知道如何從訂單頁安全重寄。重寄前確認地址與訂單狀態,避免重複通知造成混亂。
結語
WooCommerce 電郵排查的正確次序是:確認訂單狀態與觸發、檢查通知設定、查看交易郵件日誌,再追蹤 SMTP 和收件端結果。使用網域一致寄件地址、完成 SPF/DKIM/DMARC,並以真實訂單流程測試,才能建立可靠的交易通知。









