테스트 사이트 - 개발 중인 베타 버전입니다

분류갯수 출력하기에서 댓글이 있으면 분류에 갯수가 포함되네요 채택완료

카산 3년 전 조회 1,458

선우라는 분의 팁이 아래와 같은데 분류에 갯수를 다음과 같이 출력합니다

분류1(3) 분류2(4)~~ 등등 처럼 분류별 등록된 글 갯수가 분류옆에 출력이 되는데 댓글이 있으면 댓글만큼 숫자가 올라가네요...댓글은 카운트에서 제외 할 수 있을까요...코드는 아래와 같습니다.'

</p>

<p><?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>

<p>//카테고리(분류) 갯수 구하기

function category_count($ca_name='')

{

   global $g5, $bo_table;

   

   if ($ca_name) $sql_where = " where ca_name = '".$ca_name."' ";

   else $sql_where = " where ca_name != '' ";

   $row = sql_fetch(" select count(*) as cnt from ".$g5['write_prefix'].$bo_table.$sql_where);</p>

<p>   return $row['cnt'];

}</p>

<p>//갯수반영 카테고리 옵션

function new_category_option($bo_table)

{

   global $board;</p>

<p>   $category_option = '';

   if ($board['bo_use_category']) {

      $category_href = G5_BBS_URL.'/board.php?bo_table='.$bo_table;

      $category_option .= '<li><a href="'.$category_href.'"';

      if ($sca=='') $category_option .= ' id="bo_cate_on"';

      $category_option .= '>전체('.category_count().')</a></li>';</p>

<p>      $categories = explode('|', $board['bo_category_list']); // 구분자가 , 로 되어 있음

      for ($i=0; $i<count($categories); $i++) {

         $category = trim($categories[$i]);

         if ($category=='') continue;

         $category_option .= '<li><a href="'.($category_href."&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.'('.category_count($category).')</a></li>';

      }

   }</p>

<p>   return $category_option;

}

// 여기까지 추가함</p>

<p>~ 중략 ~</p>

<p><?php echo $category_option ?> <!-- 이부분을 찾아서 아래와 같이 수정함-->

<?php echo new_category_option($bo_table);?>

 </p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
3년 전

else $sql_where = " where ca_name != '' ";

여기 밑에 추가하세요;.

$sql_where .= " and wr_is_comment = 0 ";

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

엑스엠엘
3년 전
또는
if ($ca_name) $sql_where = " where ca_name = '".$ca_name."' and wr_is_comment = 0 ";
else $sql_where = " where ca_name != '' and wr_is_comment = 0 ";
카산
3년 전
감사합니다! 잘 해결 되었습니다
카산
3년 전
감사합니다~~오늘도 잘 해결 되었습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인