안녕하세요.
현재 컨택트폼을 사용하여 관리자가 신규 글 등록시 이메일을 받아 보고 있습니다.
이메일 내용중에 최 하단에 홈페이지 이동 버튼을 누르면 글로 리다이렉트 되는데요.
관리자 로그인 페이지 또는 로그인페이지로 이동 시키려고 합니다.
KBConent.class.php 에서
$mail->url = $url->getDocumentRedirect($this->uid); 를 바꾸면 될것 같은데 어떻게 바꿔야 될지요?
답변 부탁 드려요.
감사합니다.
안녕하세요~^^
올려주신 코드에서 $url->getDocumentRedirect($this->uid) 부분을
관리자 로그인 페이지나 로그인 페이지 주소로 변경해보시겠어요?
고맙습니다.
테마 쪽 functions.php에 코드를 추가하시려면
워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 추가해보세요.
add_action('kboard_document_insert', 'my_kboard_document_insert', 10, 4);
function my_kboard_document_insert($content_uid, $board_id, $content, $board){
if($board_id == '1'){
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$mail = new KBMail();
$mail->to = '관리자이메일주소';
$mail->title = '[KBoard 신규등록] '.$board->board_name.' - '.$content->title;
$mail->content = $content->content;
$mail->url = '로그인페이지주소';
$mail->url_name = '홈페이지 이동';
$mail->send();
}
}
위의 코드에서 $board_id == '1' 부분에는 실제 게시판 id로 변경해주세요.
관리자이메일주소, 로그인페이지주소 부분도 적절히 수정해주세요.
고맙습니다.
감사합니다!!!
작동되는줄 알았는데 제대로 작동이 되고 있지 않네요
아래는 차일드테마에 삽입한 소스입니다.
url_name은 변경되어 노출되는데
url 연결이 관리자페이지로 변경했는데 기존 게시판 페이지로 이동 됩니다.
add_action('kboard_document_insert', 'my_kboard_document_insert', 10, 4);
function my_kboard_document_insert($content_uid, $board_id, $content, $board){
if($board_id == '3'){
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$mail->url = 'http://www.xxx.com/wp-login.php';
$mail->url_name = '관리자페이지 이동';
}
if($board_id == '4'){
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$mail->url = 'http://www.xxx.com.wp-login.php';
$mail->url_name = '관리자페이지 이동';
}
}
항상 감사드리고 응원합니다.!
안녕하세요.
올려주신 코드 그대로 적용하신 건지요?
아래의 코드처럼 적용해주시겠어요?
add_action('kboard_document_insert', 'my_kboard_document_insert', 10, 4);
function my_kboard_document_insert($content_uid, $board_id, $content, $board){
if($board_id == '1'){
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$mail = new KBMail();
$mail->to = '관리자 이메일 주소';
$mail->title = '[KBoard 신규등록] '.$board->board_name.' - '.$content->title;
$mail->content = $content->content;
$mail->url = '관리자페이지 주소';
$mail->url_name = '관리자페이지 이동';
$mail->send();
}
}
올려주신 코드에서 3번 게시판과 4번 게시판의 $mail->url 서로 다른 듯합니다.
만약 같은 주소로 이동하게 하시려면
아래의 코드로 적용해보시겠어요?
add_action('kboard_document_insert', 'my_kboard_document_insert', 10, 4);
function my_kboard_document_insert($content_uid, $board_id, $content, $board){
if(in_array($board_id, array('3', '4'))){
if(!class_exists('KBMail')){
include_once KBOARD_DIR_PATH . '/class/KBMail.class.php';
}
$mail = new KBMail();
$mail->to = '관리자 이메일 주소';
$mail->title = '[KBoard 신규등록] '.$board->board_name.' - '.$content->title;
$mail->content = $content->content;
$mail->url = '관리자페이지 주소';
$mail->url_name = '관리자페이지 이동';
$mail->send();
}
}
위의 코드에서 관리자 이메일 주소, 관리자페이지 주소, 관리자페이지 이동 부분은 적절히 수정해주세요.
만약 위의 코드가 제대로 동작하지 않는다면
워드프레스 관리자 -> KBoard -> 게시판 목록 -> 게시판 선택 -> 기본설정 페이지에서
최신글 이메일 알림 입력 필드를 지우고 저장하신 후에 다시 확인해보시겠어요?
고맙습니다.