wp_mail 함수가 문제가 있어 잘 가지 않는것을 확인, 변경하여 문제를 해결하였습니다. 그 방법을 공유해드립니다.
1. WP-Mail-SMTP 플러그인을 설치 (SMTP 에 대한 SSL 혹은 TLS 이용, 계정을 통한 인증을 위해 개별 설정하여 설치합니다.)
2. kboard\class 에 있는 KBMail.class.php 를 아래와 같이 수정합니다.
<?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 방식을 그대로 사용하여 전송하였습니다.
정상적으로 복수의 이메일에 알림 메일이 도착하는걸 확인하였으며, 다른분께 많은 도움이 되길 바랍니다.