3
我試圖解決一個電子郵件從一個Wordpress網站發送的問題,該網站託管在GoDaddy上,其MX記錄設置爲Dreamhost.com郵件服務器。wp_mail vs php mail()
發送到該網站域名([email protected])的電子郵件不會通過,但發送到任何@ gmail.com地址的電子郵件都將通過。我測試這與下面的腳本...
<?php
$mailResult = false;
$from = "[email protected]";
$to = "[email protected]";
$subject = "PHP Mail Test script";
$message = "This is a test to check the wp_mail functionality.";
$headers = "From:" . $from;
$mailResult = wp_mail($to, $subject, $message, $headers);
echo "mail result: ".$mailResult;
?>
對於[email protected]和[email protected]地址兩者的腳本結果爲1(真)。
作爲進一步的測試中,我使用WordPress之外的類似非常簡單的腳本,使用PHP的mail()...
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
$from = "[email protected]";
$to = "[email protected]";
$subject = "PHP Mail Test script";
$message = "This is a test to check the PHP Mail functionality.;
$headers = "From:" . $from;
mail($to,$subject,$message, $headers);
echo "Test email sent";
?>
該腳本成功發送到這兩個地址。所以,PHP郵件()的作品,但wp_mail()只適用於@ gmail.com地址。 wp_mail類與php mail()不同的是什麼?
感謝安東尼奧,是的,我將使用wp_mail,但問題正如上文所述的是,在這種情況下,它只會將郵件發送到[email protected]地址,而不會發送到[email protected]。所以我問爲什麼不會wp_mail發送到這兩個地址,如果PHP郵件會呢? – lenrooney
我嘗試過wp_mail很多次,即使電子郵件不是Gmail地址,它也能正常工作。嘗試刪除**「$ mailResult = false;」** –
$ mailresult變量除了接收函數錯誤/成功報告的值之外不參與wp_mail函數,它報告1,意思是'true'電子郵件地址。 – lenrooney