게시판 새 댓글 알림 메일

게시판 관리에서 새글 알림을 받는 메일들로 새 댓글 알림 메일도 보낼 수 있나요?

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    말씀하신 게시판 관리에서 새글 알림은 KBoard 최신글 이메일 알림 기능을 말씀하시는 건지요?

    사용자가 댓글 작성 시 관리자에게 이메일로 알리고 싶으신 건지요?

     

    댓글 이메일 알림 관련해서는 아래의 링크를 참고해보세요.

    http://www.cosmosfarm.com/threads/document/12951

    http://www.cosmosfarm.com/threads/document/12637

    http://www.cosmosfarm.com/threads/document/12558

    http://www.cosmosfarm.com/threads/document/11766

     

    최신 버전의 KBoard 게시판 플러그인과 댓글 플러그인, 코스모스팜 회원관리 플러그인을 사용 중이시라면

    게시글 또는 댓글 작성 시 "새로운 댓글 알림 받기"를 체크, 체크해제 해서 원글 작성자에게 알림을 여부를 선택할 수 있습니다.

    고맙습니다.

  • 워드프레스 관리자가 아닌 최신글 이메일 알림기능에 입력해놓은 메일들로 댓글 알림을 받고싶은건데

    그럼 혹시 받는 메일을 코드로 지정해놓을 수 있나요?

  • 안녕하세요.

    특정 이메일 주소로 댓글 알림을 보내시려면

    워드프레스 관리자 -> 외모(테마 디자인) -> 테마 편집기 페이지에서 functions.php 파일 하단에

    아래의 코드를 추가해보시겠어요?

    add_action('kboard_comments_insert', 'my_admin_comment_email_alert', 10, 3);
    function my_admin_comment_email_alert($comment_uid, $content_uid, $board){
    	if($board->id == '1'){ // 실제 게시판 id로 적용해주세요.
    		$email = '이메일주소';
    		
    		$comment = new KBComment();
    		$comment->initWithUID($comment_uid);
    		$content = new KBContent();
    		$content->initWithUID($content_uid);
    		
    		$url = new KBUrl();
    		$mail = kboard_mail();
    		$mail->to = $email;
    		$mail->title = "댓글이 등록되었습니다.";
    		$mail->content = $comment->content;
    		$mail->url = $url->getDocumentRedirect($content->uid);
    		$mail->url_name = '페이지로 이동';
    		$mail->send();
    	}
    }

    위의 코드에서 $board->id == '1' 부분은 실제 게시판 id로 적용해보세요.

    이메일주소 부분에는 실제 댓글 알림을 받을 이메일 주소로 교체해보시겠어요?

    고맙습니다.

  • 감사합니다ㅠㅠㅠㅠ한가지만 더 여쭤볼게요 혹시 메일 주소를 여러개 적을때는 ,(쉼표)로 구분해서 넣으면 될까요ㅠㅠ?

  • 안녕하세요.

    보낼 메일이 여러 개라면

    이전 댓글에 안내해드린 코드 중에서

    아래의 코드를 찾아서

    $email = '이메일주소';

    아래의 코드로 교체해보시겠어요?

    $email = array('이메일주소1', '이메일주소2');

    위의 코드처럼 배열로 적용해주시면 됩니다.

    이메일주소1 부분과 이메일주소2 부분은 실제 이메일 주소로 적용해보시겠어요?

    고맙습니다.

  • 감사합니다.... 혹시
     

    // 답글이 등록되면 원글 사용자에게 메일전송
    add_action('kboard_comments_insert', 'my_kboard_comments_insert', 10, 2);
    function my_kboard_comments_insert($insert_id, $content_uid){
    	$comment = new KBComment();
    	$comment->initWithUID($insert_id);
    	$document = new KBContent();
    	$document->initWithUID($content_uid);
    
    	if($document->member_uid){
    		$user = new WP_User($document->member_uid);
    
    		if($user->user_email && $user->ID != get_current_user_id()){
    			if(!class_exists('KBMail')){
    				include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
    			}
    
    			$url = new KBUrl();
    			$mail = new KBMail();
    			$mail->to = $user->user_email;
    			$mail->title = "[답글이 등록되었습니다.] {$document->title}";
    			$comment_author = new WP_User(get_current_user_id());
    
    			$mail_content = '작성자 : ' . $comment_author->display_name . '<br>';
    			$mail_content .= $comment->content;
    			$mail->content = $mail_content;
    			$mail->url = $url->getDocumentRedirect($document->uid);
    			$mail->url_name='게시글로 이동';
    			$mail->send();
    		}
    	}
    }
    //특정 이메일로 답글 알림 메일 전송
    add_action('kboard_comments_insert', 'my_admin_comment_email_alert', 10, 3);
    function my_admin_comment_email_alert($comment_uid, $content_uid, $board){
        if($board->id == '10'){ // 실제 게시판 id로 적용해주세요.
            $email = array('이메일');
    
            $comment = new KBComment();
            $comment->initWithUID($comment_uid);
            $content = new KBContent();
            $content->initWithUID($content_uid);
    
            $url = new KBUrl();
            $mail = kboard_mail();
            $mail->to = $email;
            $mail->title = "답글이 등록되었습니다.";
            $mail->content = $comment->content;
            $mail->url = $url->getDocumentRedirect($content->uid);
            $mail->url_name = '페이지로 이동';
            $mail->send();
        }
    }
    

    이 두가지 function을 합칠 수 있을까요ㅠㅠ?

  • 추가하신 2개의 코드를 아래의 코드로 교체해서 확인해보시겠어요?

    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);
    	$document = new KBContent();
    	$document->initWithUID($content_uid);
    	
    	if($document->member_uid){
    		$user = new WP_User($document->member_uid);
    		
    		if($user->user_email && $user->ID != get_current_user_id()){
    			$url = new KBUrl();
    			$mail = kboard_mail();
    			$mail->to = $user->user_email;
    			$mail->title = "[답글이 등록되었습니다.] {$document->title}";
    			$comment_author = new WP_User(get_current_user_id());
    			
    			$mail_content = '작성자 : ' . $comment_author->display_name . '<br>';
    			$mail_content .= $comment->content;
    			$mail->content = $mail_content;
    			$mail->url = $url->getDocumentRedirect($document->uid);
    			$mail->url_name='게시글로 이동';
    			$mail->send();
    		}
    	}
    	
    	if($board->id == '1'){ // 실제 게시판 id로 적용해주세요.
    		$email = array('이메일주소');
    		
    		$comment = new KBComment();
    		$comment->initWithUID($comment_uid);
    		$content = new KBContent();
    		$content->initWithUID($content_uid);
    		
    		$url = new KBUrl();
    		$mail = kboard_mail();
    		$mail->to = $email;
    		$mail->title = "답글이 등록되었습니다.";
    		$mail->content = $comment->content;
    		$mail->url = $url->getDocumentRedirect($content->uid);
    		$mail->url_name = '페이지로 이동';
    		$mail->send();
    	}
    }

    고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요