https://www.cosmosfarm.com/threads/document/13718
위에 코드로 댓글출력은 확인하였는데, 문제는 최신댓글은 저 코드로 어떻게 어떻게해서 만들수있지만
게시판별로 댓글출력은 어떻게해야할까요?
예를들어 1번게시판에 댓글모음과 2번게시판에 댓글모음, 3번게시판에 댓글모음을해서
출력시키려고합니다.
[kboard_latest_comments_test id=1]
[kboard_latest_comments_test id=2]
[kboard_latest_comments_test id=3]
이런식으로 출력을 하고 싶은데 어떻게해야할까요?ㅠㅠ
안녕하세요~^^
해당 숏코드에 게시판 id를 입력해서 사용하시려면
코드를 수정해주셔야 할 듯합니다.
기존의 코드 대신
아래의 코드로 교체해서 확인해보시겠어요?
add_shortcode('kboard_latest_comments_test', 'kboard_latest_comments_test');
function kboard_latest_comments_test($args=array()){
global $wpdb;
$board_id = isset($args['id']) ? $args['id'] : '';
$url = new KBUrl();
$list = new KBCommentList();
$list->rpp = 5; // 불러올 댓글 개수
$list->initWithKeyword();
ob_start();
echo '<ul>';
if($board_id){
$results = $wpdb->get_results("SELECT * FROM `wp_kboard_comments` AS `comment` LEFT JOIN `wp_kboard_board_content` AS `content` ON `comment`.`content_uid`=`content`.`uid` WHERE `content`.`board_id`='{$board_id}'");
foreach($results as $comment){
$board = new KBoard();
$board->initWithContentUID($comment->content_uid);
echo '<li>';
echo $board->board_name;
echo '<br>';
echo $comment->user_display;
echo '<br>';
echo nl2br($comment->content);
echo '<br>';
echo '<a href="'.$url->getDocumentRedirect($comment->content_uid).'" target="_blank">게시글 보기</a>';
echo '</li>';
}
}
else{
while($comment = $list->hasNext()){
$board = new KBoard();
$board->initWithContentUID($comment->content_uid);
echo '<li>';
echo $board->board_name;
echo '<br>';
echo $comment->user_display;
echo '<br>';
echo nl2br($comment->content);
echo '<br>';
echo '<a href="'.$url->getDocumentRedirect($comment->content_uid).'" target="_blank">게시글 보기</a>';
echo '</li>';
}
}
echo '</ul>';
return ob_get_clean();
}
id를 입력하지 않을 경우에는 기존의 코드와 동일하게 동작합니다.
고맙습니다.