카테고리 있는 게시판에서 카테고리 가로로 출력하기 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

카테고리 있는 게시판에서 카테고리 가로로 출력하기 정보

카테고리 있는 게시판에서 카테고리 가로로 출력하기

본문

이전에 똑같은 팁을 올린 적이 있는데 일종의 버그가 있어서 보완해 올립니다.
아래 소스는 각 게시판의 스킨파일중 list.skin.php 등에 올려도 되지만 그누보드의 head.php 자체에 올려도 됩니다. (물론 위치는 적절히 알아서 세팅을^^;)
 
이렇게 하면 좋은 것이 본문보기를 해도 항상 상단에 카테고리목록이 떠준다는 거죠. (심지어는 글쓰기에서도)
 
 
:: 기능설명
  • 카테고리 목록 가로 출력 (list.skin.php에서 카테고리 셀렉트 소스는 미리 주석처리를..)
  • 가로목록(td)수 지정하여 초과할 경우 행바꿔 출력하기 
  • 선택한 카테고리 표시(굵은글씨)
  • 카테고리별 링크
  • 카테고리별 게시글수 표시
 
왠지 있어보일려고 주욱 나열했습니다 ㅎㅎ;
 
수정한 버그 : 카테고리별 게시글수에 댓글(코멘트)수까지 포함되던 걸 고쳤습니다.
 
 
<? if ($is_category) {
//echo "<table width='100%' cellpadding='0' cellspacing='0' style='margin:0 0 0 0;border:solid #55cc55 1px;'>"; //★ (카테고리목록의 테이블 길이를 100%로 할 경우)
echo "<table cellpadding='0' cellspacing='0' style='margin:0 0 0 0;border:solid #55cc55 1px;'>"; //◆
 
$ca_menu = explode("|",$board[bo_category_list]);
$ca_td_num = "5"; //가로칸수. 원하는 칸수만큼 지정해주면 됩니다.
//$ca_td_width = 100 / $ca_td_num ; //★ <td width='%'>값
 
for ($c=0, $cnt=count($ca_menu); $c<$cnt; $c++) {
if (($c == "0") || (($c >= $ca_td_num) && ($c % $ca_td_num == "0"))) { echo "<tr>"; }
//echo "<td width='".$ca_td_width."%'>"; //★
echo "<td style='padding:2 10 2 10;'>"; //◆
 
//★표와 ◆표는 어느 한쪽을 쓸 경우 다른 쪽을 주석처리하면 됩니다.
 
if ($sca == $ca_menu[$c]) { $bcoral = "<b style='color:coral'>"; } else { $bcoral = ""; }

$sqlCnum = " select count(*) as Cnum from $write_table where wr_is_comment = 0 and ca_name = '$ca_menu[$c]'";
$rowCnum = sql_fetch($sqlCnum);

echo "<a href='".$g4['bbs_path']."/board.php?bo_table=".$bo_table."&sca=".urlencode($ca_menu[$c])."'>";
echo $bcoral.$ca_menu[$c]."<span style='font-size:10px;color:#666666;'>(".$rowCnum[Cnum].")</span></a>";
echo "</td>";
}
echo "</tr></table>";
} ?>
 
 
 
head.php든 어디든 적당한 곳에 넣어주면 카테고리가 있는 게시판에서만 작동합니다.
추천
4

댓글 14개

참 좋습니다. 그런데 head.php 제일 아래쪽에 삽입하였으나 카테고리 기능을 위해서 해당 게시판에 분류에 체크하고 사용해도 안 되는군요 그냥 셀렉트 박스만 나오는데요 무엇을 잘못했을까요? 부탁드립니다.
http://www.jesus91.net/bbs/board.php?bo_table=premovi
감사합니다~
* 저는 div 로 바꿨어요
/* 해당 스타일 */
div #customer_cate_box{ width:770px; height:15px; border:4px double #54a6ab; background:#ffffff; text-align:center;padding-top:15px; padding-bottom:15px; margin-bottom:20px; }
div #customer_cate01 {float:left; padding-left:27px;text-align:left; } 

<!-- 카테고리 가로로 출력 -->
<? if ($is_category) {
echo "<div  id='customer_cate_box'>";
$ca_menu = explode("|",$board[bo_category_list]);
$ca_div_num = "9"; //가로칸수. 원하는 칸수만큼 지정해주면 됩니다.
//$ca_div_width = 100 / $ca_div_num ; //
 
for ($c=0, $cnt=count($ca_menu); $c<$cnt; $c++) {
echo "<div id='customer_cate01'>"; //
if ($sca == $ca_menu[$c]) { $bcoral = "<b style='color:coral'>"; } else { $bcoral = ""; }
$sqlCnum = " select count(*) as Cnum from $write_table where wr_is_comment = 0 and ca_name = '$ca_menu[$c]'";
$rowCnum = sql_fetch($sqlCnum);
echo "<a href='".$g4['bbs_path']."/board.php?bo_table=".$bo_table."&sca=".urlencode($ca_menu[$c])."'>";
echo $bcoral.$ca_menu[$c]."<span style='font-size:10px;color:#666666;'>(".$rowCnum[Cnum].")</span></a>";
echo "</div>";
}
echo "</div>";
} ?>
전체 3,313 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT