editor.php 구문에서
<div class="right">
<?php if($board->isWriter()):?>
<button type="submit" class="kboard-default-button-small"><?php echo __('Save', 'kboard')?></button>
<?php endif?>
</div>
입니다 이구문을 save누르면 글이 db로 저장이 되는데요 문제점 체크하고 잘 작성 되서 올라갈때를 알고싶습니다.
그래서 작성이 되서 db에 저장되면 회원 등급을 올리고 싶은데 등급 상승하는 방법은 알고있으나
kborad에서 하는부분을 잘모르겠네요 조언부탁드립니다.ㅠ
KBaord는 myCRED 플러그인와 연동됩니다.
글작성, 댓글작성시 포인트를 올릴 수 있으며 해당 포인트로 myCRED 플러그인에서 등급을 조절하시면 되겠습니다.
https://wordpress.org/plugins/mycred/
직접 체크? 하시려면 아래의 액션에 프로그램을 등록하시면 될 듯합니다.
kboard_document_insert
kboard_document_update
kboard_document_delete
체크하고 등급을 올리시는 코드는 직접 작성하셔야 하구요.
KBoard 기능 확장에 대해서는 아래 링크를 참고해주세요.
http://www.cosmosfarm.com/products/kboard/hooks
워드프레스 액션에 프로그램 추가하는 방법은 아래 링크 참고해주세요.
여기서 보면 board_id는 6으로 이용중인데 content_uid는 먼지 모르겠어요 ㅠㅠ
테마 functions.php에 add_action 을 추가해서 사용하게되면 board_id 6에서 글을 추가하면 그때 추가로 작동하는게 맞는지 궁금합니다.
add_action('kboard_document_insert', 'kboard_document_insert_test');
function kboard_document_insert_test( $content_uid,$board_id ) {
}
이런식으로 사용하면되나요?
예를 들자면 아래와 같습니다.
add_action('kboard_document_insert', 'kboard_document_insert_test', 10, 2);
function kboard_document_insert_test($content_uid, $board_id){
$content = new KBContent();
$content->initWithUID($content_uid); // 게시글 정보를 초기화 합니다.
$board = new KBoard($board_id); // 게시판 정보를 초기화 합니다.
}
$content_uid와 $board_id 값은 필요한 것만 사용하시면 되구요.
사용할 필요가 없다면 그냥 무시하시면 되겠습니다.
잘 이해가 되지않아 글을 남깁니다.
add_action('kboard_document_insert', 'kboard_document_insert_test', 10, 2);
function kboard_document_insert_test($content_uid, $board_id){
}
여기서 제가 안에 코딩을 다짜는건 이해했는데요 kboard_document_insert가 무조건적으로 어떠한 $board_id의 값을 가진 게시판 전부가 db insert 될때 작동하는건가요?
그래서 insert될때 if문으로 어떠한 게시판 $board_id일때 작동 되게 해야하는지 궁금합니다.
그리고 6번 $board_id에서 insert 될때를 어떻게 체크하는지 알려주실수 있으신가요?
아래 링크 페이지에서 kboard_document_insert 이걸 찾아보세요. (KBContent.class.php 파일 소스코드 페이지 입니다.)
아래와 같은 코드가 있습니다.
do_action('kboard_document_insert', $this->uid, $this->board_id);
kboard_document_insert 액션은 게시판에 상관없이, 모든 게시글이 등록될 때 실행됩니다.
모든 게시판에서 동작되기 때문에 $board_id 값을 체크해주셔야 합니다.
또한 게시글 저장이 완료된 후 실행됩니다.
게시글이 저장되고 나서 추가적으로 필요한 프로그램을 작성해주시면 됩니다.
add_action('kboard_document_insert', 'kboard_document_insert_test', 10, 2);
function kboard_document_insert_test($content_uid, $board_id){
if($board_id == 6){
// 이렇게 하시면 id 값이 6번인 게시판일 경우에 실행됩니다.
}
}
도움이 되었길 바랍니다^^
죄송한데 혹시 제가 글을올리고 kboard_document_insert시 제가 올린글의 제목,내용 등을 받아올수도있나요?
글 작성시 제목과 내용은 아래 코드를 참고해보세요 ㅎㅎ
function kboard_document_insert_test($content_uid, $board_id){
$content = new KBContent();
$content->initWithUID($content_uid); // 게시글 정보를 초기화 합니다.
echo $content->title; // 제목 출력
echo $content->content; // 내용 출력
exit; // 종료
}