2013-12-20 62 views
1

我有一個網站,讓遊客與我聯繫兩種方式 - 通過一個接觸的形式在它自己的網頁,並通過「AJAX」小的接觸形式在邊欄中。wp_mail(WordPress的郵件功能)不發送到Gmail或live.co.uk佔

這兩種形式的聯繫人都會向我的Gmail帳戶發送電子郵件。

的聯繫方式它自己的頁面上工作正常,但阿賈克斯形式不發送到Gmail(也不發電子郵件在.live.co.uk結尾的地址)

如果我改變了「以'在ajax聯繫表單上的地址到我的其他域(即不同的電子郵件地址)之一,那麼它工作正常。

我已經檢查了發送的電子郵件的標題,並最終安裝了一個'插件',用於在接受電子郵件之前檢查此事件以更改返回路徑。這沒有任何區別。

有很多關於這些論壇和有關wp_mail別人不發送到Gmail,但沒有實際的解決方案喋喋不休。

我檢查Gmail的垃圾郵件文件夾等的情況下,電子郵件在那裏去了,但事實並非如此。

我也嘗試過使用'mail()'函數,但無濟於事。

我認爲Ajax調用去看起來像這樣在網頁代碼:

$headers = 'From: myWebsite <[email protected]>' . "\r\n"; 
$headers .= 'Reply-To: myWebsite <[email protected]>'; 
$email_to = "[email protected]"; 
wp_mail($email_to , sanitize_text_field($subjectLine), wp_strip_all_tags($emailContent), $headers); 
$email_to = "[email protected]"; 
wp_mail($email_to , sanitize_text_field($subjectLine), wp_strip_all_tags($emailContent), $headers); 

每次提交表單時,我得到了封郵件給我「anotherdomain.com」地址,但不是我的gmail.com地址。

任何想法?

+0

當使用gmail域名時的行爲是什麼?它是否提供任何特定的錯誤代碼/錯誤消息作爲返回值? – dreamweiver

+0

我覺得在這裏可能會發生的事情是,您的域名可能已被Google標記,他們可能只是在他們發現他們來自您的域名時立即廢棄/拒絕電子郵件。你是否從你的域名發送了很多電子郵件?嘗試使用此工具 - http://www.senderbase.org/並查看您的域名的報告。 –

+2

作爲替代方案,您的郵件服務器是否支持SMTP?如果是這樣,你可以做的是安裝這個插件 - http://wordpress.org/plugins/wp-mail-smtp/並配置它(所以輸入你的用戶名/密碼/從電子郵件/端口/等)。然後發送測試電子郵件。這樣做會顯示一個調試輸出 - 在頂部您會看到「結果是:」和「bool(...)」 - 如果它通過調試輸出顯示「bool(false)」紅色,並且可能會給出你可以更好地瞭解失敗的原因。 –

回答

5

許多這些類型的問題涉及電子郵件不「發送」到某些域。但是,該電子郵件未被收到的可能性更大。 「未收到」不等同於「未發送」,這是故障排除中的重要區別。

如果其他電子郵件地址正在接收,則很可能是在您列出的接收主機上標記了您的消息。

有些事情,你可以做給你的電子郵件獲得通過,而不沿途某處被棄置的一個更好的機會:

+1

我結束了使用wp-mail-smtp插件,這工作。感謝您的幫助。將這標記爲答案,因爲尼古拉還沒有回覆我(他還建議使用插件),而且這個答案有更多的細節。謝謝。 –