https://www.cosmosfarm.com/threads/document/15289
위 게시물을 참고하여 댓글 알림을 관리자 이메일로 받고자 functions.php 파일을 수정하였습니다.
그런데 새글과 댓글 모두 이메일 알림이 오지 않는데요...
무슨 문제일까요?
- functions.php에 추가된 코드
add_action('kboard_document_insert', 'my_admin_content_email_alert', 10, 2);
function my_admin_content_email_alert($content_uid, $board_id){
$board = new KBoard($board_id);
if(!$board->isAdmin()){
$content = new KBContent();
$content->initWithUID($content_uid);
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$url = new KBUrl();
$mail = new KBMail();
$mail->to = 'abc@gmail.com';
$mail->title = "새로운 글이 등록 되었습니다.";
$mail->content = $content->content;
$mail->url = $url->getDocumentRedirect($content->uid);
$mail->url_name = '페이지로 이동';
$mail->send();
}
}
add_action('kboard_comments_insert', 'my_admin_comment_email_alert', 10, 2);
function my_admin_comment_email_alert($comment_uid, $content_uid){
$comment = new KBComment();
$comment->initWithUID($comment_uid);
$content = new KBContent();
$content->initWithUID($content_uid);
$board = $content->getBoard();
if(!$board->isAdmin()){
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$url = new KBUrl();
$mail = new KBMail();
$mail->to = get_option('admin_email');
$mail->title = "댓글이 등록 되었습니다.";
$mail->content = $comment->content;
$mail->url = $url->getDocumentRedirect($content->uid);
$mail->url_name = '페이지로 이동';
$mail->send();
}
}
감사합니다^^
안녕하세요~^^
게시글 알림은 최신글 이메일 알림 설정을 확인해보시겠어요?
워드프레스 관리자 -> KBoard -> 게시판 목록 -> 게시판 선택 -> 기본설정 페이지에서 확인하실 수 있습니다.
최신글 이메일 알림 입력 필드에 알림 받을 이메일을 입력하시면
별 다른 코드를 추가하지 않으셔도
새로운 게시글 등록 시 입력한 이메일로 알림을 보냅니다.
최신글 이메일 알림을 설정하셨다면
댓글 쪽 코드는 기존의 코드 대신
아래의 코드를 적용해보시겠어요?
add_action('kboard_comments_insert', 'my_kboard_comments_insert', 10, 3);
function my_kboard_comments_insert($comment_uid, $content_uid, $board){
$comment = new KBComment();
$comment->initWithUID($comment_uid);
if(!$board->isAdmin()){
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$url = new KBUrl();
$mail = new KBMail();
$mail->to = explode(',', $board->meta->latest_alerts);
$mail->title = "댓글이 등록 되었습니다.";
$mail->content = $comment->content;
$mail->url = $url->getDocumentRedirect($content_uid);
$mail->url_name = '페이지로 이동';
$mail->send();
}
}
고맙습니다.
스레드봇님 안녕하세요.
관리자 이메일이라는게 계정에 하나밖에 등록이 안되는 건가요?
워드프레스 사용자에서 권한이 '관리자'로 설정되어 있는 모든 사람에게 이메일이 발송 되는것이라고 생각했는데 저에게만 이메일 알림이 오고 있습니다.
이런 경우에 알림 받을 이메일 주소를 추가하려면 어떻게 하면 될까요?