각각의 KBoard 게시판의 고유주소를 통해서 json값 받는 방법에 대해 문의드렸던 사람입니다.
오늘 올려주신 테스트 코드를 list.php 하단에 넣고 실행해서 console창을 실행해 봤는데
원하는 json 값이 나타나지 않아서 다시 문의드립니다.
시험을 해봤는데 응답을 확인해보니
" KBoard 알림 :: id=null, 아이디값은 필수입니다. "
라는 문구만 뜨고 json 값에 대한 값은 알수가 없어서 어떤 부분을 수정해야 하는지
다시 문의드립니다. 감사합니다.
안녕하세요.
웹호스팅에서 세션을 사용할 수 있도록 설정되어 있는지요?
뭔가 좀 이상한 현상이군요.
그렇다면,
먼저 아래의 코드를 테마의 functions.php 파일에 추가해주세요.
add_action('wp_ajax_my_kboard_ajax_builder', 'my_kboard_ajax_builder');
add_action('wp_ajax_nopriv_my_kboard_ajax_builder', 'my_kboard_ajax_builder');
function my_kboard_ajax_builder(){
$board_id = isset($_REQUEST['board_id'])?$_REQUEST['board_id']:'';
$board = new KBoard();
$board->setID($board_id);
if($board->uid){
$board_builder = new KBoardBuilder($board->uid);
$board_builder->setSkin($board->skin);
$board_builder->setRpp($board->page_rpp);
$board_builder->board = $board;
die($board_builder->getJsonList());
}
else{
die('KBoard 알림 :: id='.$_REQUEST['board_id'].', 생성되지 않은 게시판입니다.');
}
}
그리고 아래의 코드를 KBoard 스킨의 list.php 파일에 추가해서 테스트해주세요.
<script>
jQuery(document).ready(function(){
jQuery.get('<?php echo admin_url('admin-ajax.php')?>', {action:'my_kboard_ajax_builder', board_id:'1', pageid:'1'}, function(res){
console.log(res);
}, 'json');
});
</script>
위 코드에서 board_id 값 또는 pageid 값은 적절히 변경해주세요.
고맙습니다.
게시판 마다 id값을 수정해야하는 점은 있지만 이제 제대로 json값을 받아오네요. 감사합니다.