2016-07-02

[Wordpress]發送郵件時好時壞問題處理

參考資料:
  • https://sofree.cc/php-smtp-mail/
  • http://jkmoo.com/wordpress/40/synology-nas-web-station%E4%B8%AD%E8%A8%AD%E5%AE%9Aphp-ini%E5%90%84%E5%8F%83%E6%95%B8/
原本使用Wordprss外掛WP Mail SMTP,但是不知道為什麼時好時壞,只好放棄改用其他方式,透過佈景主題 > 主題編輯器 > functions.php,來寄送郵件,將以下程式程式加入functions.php
add_action('phpmailer_init', 'mail_smtp');
function mail_smtp( $phpmailer ) {
  $phpmailer->IsSMTP();
  $phpmailer->SMTPAuth = true; // 啟用SMTPAuth服務
  $phpmailer->Port = 465;  //SMTP郵件發送埠,
  $phpmailer->SMTPSecure ="ssl"; //是否驗證ssl或tls
  $phpmailer->Host = "smtp.gmail.com"; // 郵件的SMTP服務器地址
  $phpmailer->Username = ""; //你的郵件地址
  $phpmailer->Password =""; //你的郵件登陸密碼
}
並加入一個測試郵件的功能,將以下程式命名為send.php
<?php
  $to =" xxxx@gmail.com "; //收件者
  $subject = "test"; //信件標題
  $msg = "smtp發信測試";//信件內容
  $headers = "From: xxxx@gmail.com"; //寄件者
  
  if(mail("$to", "$subject", "$msg", "$headers")):
   echo "信件已經發送成功。";//寄信成功就會顯示的提示訊息
  else:
   echo "信件發送失敗!";//寄信失敗顯示的錯誤訊息
  endif;
?>
只要執行該網址,就可以知道郵件是否正常發送 最後還是要提醒大家一下,使用主題編輯器來新增功能記得要備份,否則當主題更新或其他更新,functions.php會變回預設值

沒有留言:

張貼留言