커뮤니티에 답변주신 내용을 참고해서 아래와 같이 functions.php 에 작성했고 출력은 정상적으로 되는데
최신글 처럼 갯수 제한을 거는 법은 없을까요?
//kboard 제품정보 최근 본 게시판
add_shortcode('kboard_latest_content_view', 'my_kboard_latest_content_view');
function my_kboard_latest_content_view($args=array()){
global $wpdb;
$board_id = (isset($args['id'])&&$args['id']) ? $args['id'] : '';
if(isset($_SESSION['increased_document_uid'])&&$_SESSION['increased_document_uid']){
$document_uid_list = $_SESSION['increased_document_uid'];
$url = new KBUrl();
$router = new KBRouter();
$router->process();
$board_url = $router->getBoardURL($board_id);
ob_start();
foreach($document_uid_list as $document_uid){
$content = new KBContent();
$content->initWithUID($document_uid);
if($board_id == $content->board_id){
?>
<div class="kboard-recently">
<a href="<?php echo $url->set('uid', $content->uid)->set('mod', 'document')->toStringWithPath($board_url)?>#kboard-document">
<img src="<?php echo $content->getThumbnail()?>" width="80px" height="80px">
</a>
</div>
<?php
}
}
}
else{
ob_start();
?>
<div>최근 본 게시글이 없습니다.</div>
<?php
}
return ob_get_clean();
}
안녕하세요~^^
본문에 코드를 올려주실 땐 반드시 에디터의 코드 스니펫 삽입 기능을 이용해주세요.
그렇지 않으면, 이상한 코드로 바뀌거나 질의응답 시 의사소통에 문제가 있을 수도 있습니다.
올려주신 숏코드에서 표시되는 게시글의 수를 입력하게 하시려면
아래의 코드로 교체해서 확인해보시겠어요?
//kboard 제품정보 최근 본 게시판
add_shortcode('kboard_latest_content_view', 'my_kboard_latest_content_view');
function my_kboard_latest_content_view($args=array()){
global $wpdb;
$board_id = (isset($args['id'])&&$args['id']) ? $args['id'] : '';
$rpp = (isset($args['rpp'])&&$args['rpp']) ? $args['rpp'] : '';
if(isset($_SESSION['increased_document_uid'])&&$_SESSION['increased_document_uid']){
$document_uid_list = $_SESSION['increased_document_uid'];
if($rpp){
$document_uid_list = array_slice($document_uid_list, 0, $rpp);
}
$url = new KBUrl();
$router = new KBRouter();
$router->process();
$board_url = $router->getBoardURL($board_id);
ob_start();
foreach($document_uid_list as $document_uid){
$content = new KBContent();
$content->initWithUID($document_uid);
if($board_id == $content->board_id){
?>
<div class="kboard-recently">
<a href="<?php echo $url->set('uid', $content->uid)->set('mod', 'document')->toStringWithPath($board_url)?>#kboard-document">
<img src="<?php echo $content->getThumbnail()?>" width="80px" height="80px">
</a>
</div>
<?php
}
}
}
else{
ob_start();
?>
<div>최근 본 게시글이 없습니다.</div>
<?php
}
return ob_get_clean();
}
실제 숏코드는 아래처럼 적용해보세요.
[kboard_latest_content_view id=1 rpp=5]
위의 코드에서 rpp 부분의 숫자가 표시될 게시글의 수입니다.
최근 본 게시글을 먼저 표시되게 하시려면
위의 코드 중 아래의 코드를 찾아서
$document_uid_list = array_slice($document_uid_list, 0, $rpp);
찾은 코드 위에 아래의 코드를 추가해보세요.
$document_uid_list = array_reverse($document_uid_list);
고맙습니다.
깔끔하게 해결되었습니다! 감사합니다^^!