BOARD

팁·활용

그누보드 게시판에서 글이 없는 분류 탭 숨기는 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 0회 작성일 26-09-13 14:32

본문

문제 상황 및 원인

그누보드 기본 설정에서는 게시판에 분류를 설정해 두면 해당 카테고리에 속한 글의 유무와 관계없이 모든 분류 탭이 항상 출력됩니다. 이로 인해 글이 하나도 없는 빈 분류 탭이 노출되어 이용자가 불편을 겪을 수 있습니다.

해결 방법

bbs/list.php 파일의 분류 메뉴 출력 루프 내에서 sql_fetch 함수를 이용해 각 분류별 글 개수를 확인하고, 개수가 0개이거나 빈 값이면 continue 처리하여 출력하지 않도록 수정합니다.

$tmp_write_table = $g5['write_prefix'] . $bo_table;
$categories = explode('|', $board['bo_category_list']);
for ($i=0; $i<count($categories); $i++) {
    $category = trim($categories[$i]);
    $tmp_row = sql_fetch(" select count(*) as cnt from {$tmp_write_table} where ca_name = '".$category."' ");
    if ($category=='' || $tmp_row['cnt'] < 1) continue;
    $category_option .= '<li><a href="'.(get_pretty_url($bo_table,'','sca='.urlencode($category))).'"';
    $category_msg = '';
    if ($category==$sca) {
        $category_option .= ' id="bo_cate_on"';
        $category_msg = '<span class="sound_only">열린 분류 </span>';
    }
    $category_option .= '>'.$category_msg.$category.'</a></li>';
}

특정 스킨에만 적용하는 방법 및 주의사항

특정 게시판 스킨에만 이 기능을 적용하려면 bbs/list.php 파일에서 수정했던 분류 출력 로직 부분을 복사하여 해당 게시판 스킨의 list.skin.php 파일 상단에 추가해야 합니다. 그 후 bbs/list.php 파일은 원본 상태로 되돌려 놓습니다. 그누보드 버전별로 코드 차이가 있을 수 있으므로 작업 전 파일을 반드시 백업하시고 적용 후 정상 출력 여부를 확인하시기 바랍니다.

댓글목록

등록된 댓글이 없습니다.