안녕하세요.
어제 답변주신 내용(https://www.cosmosfarm.com/threads/document/38666) 덕분에 첫 문제는 해결을 봤습니다.
A 게시판에 1이라는 옵션을 선택하면 B게시판에 같은 내용의 글이 하나 더 게시되도록 했는데요.
B게시판에 최신글 이메일 알림 설정을 해두었는데 insertContent() 이걸 통해서 글이 게시된 것은 알림 메일이 발송되지 않는 것 같습니다.
만약에 B게시판에 php로 글이 올라가도록 했을 때 대시보드에서 설정해둔 B게시판 최신글 이메일 알림 주소들에 메일을 보내려면 어떻게 해야할까요?
검토 후 답변해주시면 감사하겠습니다.
안녕하세요~^^
KBoard 플러그인의 KBContent 클래스의 insertContent 함수를 사용할 경우
최신글 이메일 알림 기능은 동작하지 않습니다.
A게시판에 게시글 등록 시 B게시판에 게시글을 등록한 후
B게시판 최신글 이메일 알림 입력 필드에 입력하신 이메일로 알림을 보내고 싶으신 건지요?
추가하신 코드 중 아래의 코드를 찾아서
$content->insertContent($data);
아래의 코드로 교체해보시겠어요?
$uid = $content->insertContent($data);
if($uid){
$new_board = new KBoard($data['board_id']);
$url = new KBUrl();
$mail = kboard_mail();
$mail->to = explode(',', $new_board->meta->latest_alerts);
$mail->title = apply_filters('kboard_latest_alerts_subject', '['.__('KBoard new document', 'kboard').'] '.$new_board->board_name.' - '.$content->title, $content);
$mail->content = apply_filters('kboard_latest_alerts_message', $content->getDocumentOptionsHTML() . $content->content, $content);
$mail->url = $url->getDocumentRedirect($uid);
$mail->url_name = __('Go to Homepage', 'kboard');
$mail->send();
}
실제 메일을 보내는 기능은 워드프레스 wp_mail 함수를 활용하고 있습니다.
wp_mail 함수에 대한 자세한 내용은
아래의 링크를 참고해보세요.
https://developer.wordpress.org/reference/functions/wp_mail/
고맙습니다.
전달주신 코드 넣어보니 정상적으로 작동합니다!
감사합니다! ㅎㅎ