[WordPress] WP Mail SMTP 設定教學,以GMail SMTP為例解決寄信問題


前陣子我在同一主機下架了二個WordPress (A站、B站),表面上運作都沒有問題,沒想到在測試信件的時候卻發生其中一個WP無法發信的情況 (指的是訪客留言我卻收不到信件通知),所以特別安裝了「Contact Form 7」來驗証一下是否有什麼問題,結果Contact Form 7在A、B二站都是顯示已留言成功,但事實上還是只有A站有收到,爬文了一下猜想「可能」是PHP發信函式mail()的設定問題,在不熟的PHP的情況下加上時間有點趕,所以最後選擇了用WP的外掛「WP Mail SMTP」來協助修改設定,這個外掛的好處是設定容易、還可以指定自己想要SMTP,也比較不會被當成垃圾信,總之,如果你有發信上的問題的話,大部分都是設定問題,如果不會改程式的話,那麼推薦大家可以試試這款外掛。

網址:WordPress – WP Mail SMTP
推薦閱讀:[WordPress] 利用Postman SMTP認證OAuth 2.0,以GMail來發信

【設定教學】以GMail SMTP為例

在安裝好「WP Mail SMTP」後,會在WP後台的「設定」中會多一個「Email」的選項

進入之後按照下方的說明來說定即可:

  • From Email:指定想要顯示的信箱,例如service@gmail.com
  • From Name:指定要呈現的寄件人名稱,例如:service
  • Mailer:選擇「Send all WordPress emails via SMTP.」
  • Return Path:可不用勾選

再來就是設定SMTP (以GMail為例,如果你不是用GMail,請自行查詢主機的SMTP)

  • SMTP Host:smtp.gmail.com
  • SMTP Port:465
  • Encryption:選擇「Use SSL encryption」
  • Authentication:選擇「Yes: Use SMTP authentication」
  • Username:輸入完整的信箱
  • Password:輸入信箱密碼

以上設定後記得點擊「儲存變更」就可以生效了,但如何確定是否有設定成功呢?在最下方有個「Send a Test Email」的選項,輸入收件信箱並點擊「Send Test」就可以進行測試

如果測試結果是「true」那麼應該就不會有問題,若是「false」則需要根據它提供的錯誤訊息一步一步的排解

  • 鼻子兒

    想請問一下 為何我Contact Form 7使用gmail的信箱是可以成功收到信件的,但使用gmail以外的信箱雖然顯示寄件成功,但卻還是沒收到信呢…..

  • 蔡語宸

    非常好!