快速解決 Kadence 表單阻止電子郵件傳遞問題

已發表: 2023-06-12

TL;DR:如果您在提交表單時沒有收到 Kadence 表單阻止電子郵件,請檢查表單阻止設置。 確保表單塊設置為使用與“回复”地址相同的“發件人”地址通過電子郵件發送提交。 這應該是使用與表單所在站點相同的域的實際地址。 如果您需要更複雜的電子郵件路由解決方案,本文還介紹瞭如何配置 WordPress、SMTP 和 DNS 設置,以便傳送 WordPress 生成的電子郵件。

如果您使用 Kadence Form Block 設置了聯繫表單,並且表單提交未通過電子郵件發送,則可能有多種原因。 他們中的大多數不涉及Kadence。 電子郵件的可送達性主要取決於您如何配置 WordPress、您域名的電子郵件 DNS 設置以及您用於從 WordPress 生成和發送電子郵件的方法。

首先,您應該確認您的站點域沒有被列入垃圾郵件黑名單。 這可以解釋可傳遞性問題。

其次,您應該確認您的網站正在使用簡單的電子郵件日誌插件發送電子郵件。

如果你沒有被列入黑名單,電子郵件正在發送,但你沒有收到它們,你的 Kadence 表單塊設置是開始深入挖掘的地方。

讓我們來看看。

Kadence 表單提交後阻止電子郵件操作

Kadence 表單在提交設置詳細信息後阻止電子郵件操作(屏幕截圖)
確保您已選擇通過電子郵件接收表單提交。

首先,檢查表單塊設置中的提交後操作參數。

應選中第一個選項Email ,如右側屏幕截圖所示。

Kadence 表單阻止電子郵件設置

Kadence 表單塊電子郵件設置的屏幕截圖詳細信息。
正確設置您的電子郵件!

接下來,檢查表單塊的後端電子郵件設置From EmailReply-To字段是最重要的,如屏幕截圖所示。

如果您的表單提交電子郵件看起來是垃圾郵件,則它們可能不會發送到接收郵件主機。 如果您的設置造成以下情況,它們可能看起來像垃圾郵件:

  • “發件人”電子郵件與表單所在網站的域不匹配。
  • “發件人”電子郵件與 WordPress 常規設置中的管理電子郵件地址不匹配。
  • “發件人”地址不是真實的電子郵件帳戶或轉發別名。
  • “回复”地址不同於“發件人”電子郵件。
  • “電子郵件主題”行是空白的。
  • 使用了“抄送”和“密送”字段——或者更糟的是,它們塞滿了多個收件人。

許多電子郵件客戶端(用於發送或接收電子郵件的軟件應用程序,如 Gmail 或 Outlook)不會發送主題行為空或電子郵件正文中沒有消息內容的電子郵件。 用於測試目的的簡短無意義消息看起來像垃圾郵件,可能不會被發送或傳遞。

簡單的解決方案

在“發件人”地址中使用與“回复”地址不同的域發送電子郵件可能會影響其送達能力。 一些電子郵件提供商可能會將差異視為潛在垃圾郵件或網絡釣魚的跡象。

一致性是建立信任並提高成功發送電子郵件的機會的最佳選擇。 因此,確保您的 Kadence 表單塊電子郵件被發送的最直接且可能是最好的方法是使“發件人”和“回复”字段中的地址保持一致。 發件人/回复地址也應該是 WordPress 常規設置中的默認管理電子郵件地址。

不要忘記將 Kadence 驗證碼添加到您的表單中以阻止垃圾郵件發送者!

Kadence 表單塊電子郵件默認從管理電子郵件地址發送。
當你設置 WordPress 時,你給了它一個電子郵件地址,用作電子郵件通知的“發件人”地址。

不那麼簡單的解決方案

使用默認阻止設置並直接回复表單中的電子郵件可能會很方便。 您可能希望將回復發送到與表單提交關聯的地址。 或者,某些電子郵件主機可能會拒絕您的表單提交電子郵件,即使您已按照上述設置進行設置。

設置 WordPress 以發送合法電子郵件

默認情況下,WordPress 使用郵件函數wp_mail()作為 PHPMailer 類的包裝器,PHPMailer 類是一個用於生成電子郵件的 PHP 庫,它擴展了 PHP mail() 函數。 這可以正常工作,但默認情況下,沒有驗證消息是由它指定的發件人發送的。

如此多的人為了垃圾郵件目的而錯誤配置和濫用 PHP,以至於電子郵件主機經常懷疑他們。 任何由 PHP 而不是實際電子郵件用戶生成的傳入消息更有可能被垃圾郵件過濾器阻止。 使 PHP 郵件為您工作的最佳做​​法是確保設置它使用的域來驗證這些電子郵件的有效性。

DKIM、SPF 和 DMARC

這些是您的 DNS 設置中所有類型的 TXT 記錄。 DKIM 驗證郵件,SPF 驗證發送郵件的服務器,DMARC 使用 DKIM 和 SPF 來確保電子郵件的“發件人”地址與連接到正確設置為發送電子郵件的服務器的域相匹配。 DMARC 還指示收件人應如何處理未通過身份驗證的電子郵件,並提供電子郵件地址以反饋有關您的郵件的接收方式。

理想情況下,每個包含從 WordPress、時事通訊服務或任何其他應用程序發送或歸因於它的電子郵件的域都應充分配置和維護 DKIM、SPF 和 DMARC 記錄。 如果您使用 PHP 發送電子郵件,這些步驟對於確定其真實性更為關鍵。

郵件傳輸協議

將 WordPress 設置為使用 SMTP 而不是 PHP 來發送電子郵件是解決可傳遞性問題的最常見方法。

一些託管的 WordPress 主機可能提供內置或第三方 SMTP 服務來處理 WordPress 生成的交易電子郵件。 如果您使用這樣的主機,您可能需要為 SMTP 設置 WordPress。 這曾經是 WordPress 主機之間的常見產品; 今天,您更有可能需要設置自己的 SMTP 服務。 Mailgun 和 Postmark 是通常推薦的低成本或免費選項。 這些需要安裝一個插件,然後通過他們的服務發送電子郵件。

您也可以使用 Gmail。 許多 WordPress 插件和教程解釋瞭如何設置 WordPress 以在免費 Gmail 帳戶上通過 SMTP 發送電子郵件。 但是,這是有限制的,並且不能保證 Google 會支持這種非官方支持的免費 Gmail 帳戶的使用。 他們確實明確支持將 SMTP 與 Google Workspace 結合使用的應用。

無論您選擇使用什麼 SMTP 服務,您都需要通過完成以下設置並將它們添加到wp-config.php來告訴 WordPress 如何訪問它:

 // SMTP Settings define( 'SMTP_username', '[email protected]' ); // SMTP Username define( 'SMTP_password', 'password' ); // SMTP Password define( 'SMTP_server', 'smtp.email.com' ); // SMTP Server Address define( 'SMTP_FROM', '[email protected]' ); // "From" Email Address define( 'SMTP_NAME', 'Your Name' ); // "From" Name define( 'SMTP_PORT', '587' ); // Server Port Number, usually 25, 465 or 587 define( 'SMTP_SECURE', 'tls' ); // Encryption - SSL or TLS define( 'SMTP_AUTH', true ); // Use SMTP authentication (True or False) define( 'SMTP_DEBUG', 0 ); // Turn debugging on/off (0 or 1)

然後,您需要將以下操作添加為活動代碼片段或活動主題的functions.php文件的一部分:

 add_action( 'phpmailer_init', 'my_phpmailer_smtp' ); function my_phpmailer_smtp( $phpmailer ) { $phpmailer->isSMTP(); $phpmailer->Host = SMTP_server; $phpmailer->SMTPAuth = SMTP_AUTH; $phpmailer->Port = SMTP_PORT; $phpmailer->Username = SMTP_username; $phpmailer->Password = SMTP_password; $phpmailer->SMTPSecure = SMTP_SECURE; $phpmailer->From = SMTP_FROM; $phpmailer->FromName = SMTP_NAME; }

現在 PHPMailer 將使用 SMTP,而 WordPress 將通過經過身份驗證的郵件用戶和郵件服務器發送電子郵件。 僅此一項就應該確保相當高的交付能力。 設置您的 DKIM、SPF 和 DMARC 記錄以確保最高的交付率和打開率。

您可能會發現,使用為此目的設計的插件,可以更輕鬆地為任意數量的郵件提供商設置 SMTP。 Nathan Ingram 推薦了一個,並在本文中深入探討了這個主題。 Kiki Sheldon 在有關在 Nexcess 託管 WordPress 主機上設置 SMTP 的教程中提供了更多技術深度。

確保發送 Kadence 表單塊電子郵件的四個簡單步驟

總之,如果您在從 Kadence Form Block 發送電子郵件時遇到問題,您可以採取幾個故障排除步驟。 雖然大多數潛在問題與 Kadence 沒有直接關係,但可以通過檢查和配置我們在此處討論的 WordPress 和 DNS 設置來解決。

  1. 首先,確保您的站點域沒有被列入垃圾郵件黑名單很重要,因為這會影響電子郵件的送達率。 此外,您應該確認您的網站確實在使用電子郵件日誌插件發送電子郵件。
  2. 如果您已排除黑名單並確認正在發送電子郵件,則應關注 Kadence Form Block 設置。 檢查塊的“提交後的操作”參數並確保選擇“電子郵件”選項。 注意電子郵件設置中的“來自電子郵件”和“回复”字段,確保它們符合特定條件。 例如,“發件人”電子郵件應與表單所在網站的域相匹配,並且應該是使用相同域的真實電子郵件帳戶。
  3. 提高電子郵件送達率的最簡單解決方案是保持“發件人”和“回复”地址一致,並使用 WordPress 常規設置中的默認管理電子郵件地址。 這種一致性建立了信任並減少了電子郵件被標記為垃圾郵件的機會。
  4. 但是,如果您需要更複雜的電子郵件路由解決方案,您可能需要配置 WordPress、SMTP 和 DNS 設置。 WordPress 默認使用wp_mail()和 PHPmailer,但它們缺乏身份驗證,這可能會引起垃圾郵件過濾器的懷疑。 在 DNS 設置中配置 DKIM、SPF 和 DMARC 記錄有助於驗證 WordPress 創建和發送的電子郵件的真實性。 另一個常見的解決方案是將 WordPress 設置為使用 SMTP 而不是 PHP 來發送電子郵件。 這包括指定 SMTP 設置,將它們添加到wp-config.php文件,並添加一個使 PHPmailer 使用 SMTP 的函數。

通過執行這些故障排除步驟並確保正確配置 WordPress、您的 DNS 設置和 Kadence Form Blocks,您可以確保 Kadence Form Block 電子郵件的可送達性。 請記住實施其他措施,例如將驗證碼添加到您的表單中以阻止傳入的垃圾郵件。 採取這些措施將有助於確保您提交的表單成功發送到您的收件箱。