wp_mail 함수가 문제가 있어 잘 가지 않는것을 확인, 변경하여 문제를 해결하였습니다. 그 방법을 공유해드립니다.
1. WP-Mail-SMTP 플러그인을 설치 (SMTP 에 대한 SSL 혹은 TLS 이용, 계정을 통한 인증을 위해 개별 설정하여 설치합니다.)
2. kboard\class 에 있는 KBMail.class.php 를 아래와 같이 수정합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <?php /** * KBoard 메일 * @link www.cosmosfarm.com * @copyright Copyright 2013 Cosmosfarm. All rights reserved. * @license http://www.gnu.org/licenses/gpl.html */ class KBMail { var $to ; var $title ; var $content ; public function send(){ $admin_email = get_option( 'admin_email' ); if ( is_array ( $this ->to)){ $this ->to = implode( ',' , $this ->to); $this ->to = str_replace ( ' ' , '' , $this ->to); } $to = $this ->to; $headers = 'MIME-Version: 1.0' . "\r\n" ; $headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n" ; $headers .= 'To: ' . $this ->to . "\r\n" ; $headers .= 'From: ' . $admin_email . "\r\n" ; $title = '[' .__( 'KBoard new document' , 'kboard' ). '] ' . $this ->title; $content = nl2br (kboard_htmlclear( $this ->content)) . '<br><br><a href="' .site_url(). '" onclick="window.open(this.href); return false;">' .site_url(). '</a>' ; $result = wp_mail( $to , $title , $content , $headers ); return $result ; } } ?> |
저장후 정상 동작하는 이메일 알림 서비스 이용하세요~
$this->to 에는 정상적으로 설정에서 관리된 이메일 주소가 포함되있었으나 이를 $to 변수에 넣지 않고 메일을 전송시키면,
NULL 변수에다가 메일을 보내는 꼴이 됩니다. 때문에 $to = $this->to 를 삽입하여 정상적으로 해당 유저에게 가도록 했고
EUC-KR 로 인코딩을 하면 제 컴퓨터에서는 문제가 발생하여서 그냥 원래의 UTF-8 방식을 그대로 사용하여 전송하였습니다.
정상적으로 복수의 이메일에 알림 메일이 도착하는걸 확인하였으며, 다른분께 많은 도움이 되길 바랍니다.
감사합니다~!
감사합니다.
좋은 정보 감사합니다 ^^
감사합니다.
공개해주신 방법을 참고해서 개선할 부분이 있으면 적극적으로 적용 하도록 하겠습니다. ㅎㅎ
AI 상담