분류 2차 현재페이지 값 채택완료
그누5쓰고있어요...ㅠ
링크에서 처럼 2단 분류를 사용하고 있는데
지금 상태가
list.skin.php에서
1차 카테로그 / 2차 카테로그 들고오는 부분
<?
?>
$cat2 = explode('|',$board[bo_2]);
for($i = 0; $i < count($cat2); $i++){
$cat2[$i] = explode(',',$cat2[$i]);
}
?>
보여지는 부분
<?if($cat1){?>
<?}?>
<ul id="bo_cate_ul">
<li>
<a href="<?=G5_URL?>/bbs/board.php?bo_table=<?=$bo_table?>" id="bo_cate_on" <?if($wr_1 == '' || !$wr_1){?>style="background-color:#ccc;"<?}else{}?>>전체</a>
</li>
<?for($i = 0; $i < count($cat1); $i++){?>
<li>
<a href="<?=G5_URL?>/bbs/board.php?bo_table=<?=$bo_table?>&wr_1=<?=$cat1[$i]?>" class="c_<?=$i?>" id="bo_cate_on"
<?if($wr_1 == $cat1[$i]){?>style="background-color:#ccc;"<?}else{}?>><?=$cat1[$i]?></a>
<ul>
<?for($j = 0; $j < count($cat2[$i]); $j++){?>
<li>
<a href="<?=G5_URL?>/bbs/board.php?bo_table=<?=$bo_table?>&wr_1=<?=$cat1[$i]?>&wr_2=<?=$cat2[$i][$j]?>"
<?if($wr_2 == $cat2[$i][$j]){?>style="background-color:#3D3D3D;color:#fff;"<?}else{}?>>
<?=$cat2[$i][$j]?>
</a>
</li>
<?}?>
</ul>
</li>
<?}?>
</ul>
</nav>
<?}?>
이런형태인데 이렇게 되면 밑에처럼 다뜨는데 제가 하고싶은건
제가 하고 싶은건 현재페이지가 1차 카테고리이고 위에 보여지는 부분카테고리는 2차로 만들고 싶은데.... 밑에 형식처럼요.ㅠㅠ 방법이..
답변 3개
<!-- 게시판 카테고리 시작 { --> <!-- } 게시판 카테고리 끝 --> function change_page(va){ if(va.length>1){ loc=location.href.replace(/&sca=[@]{0,}[ㄱ-힣]{0,}/g,""); location.href=loc+"&sca="+va; } } <? if(!$_GET['sca']){ echo "change_page('전체')"; }?> </script> <? $_GET['sca']=preg_replace("/@{1,}/","",$_GET['sca']); $t=explode("|",$board['bo_category_list']); $cate_arr=""; foreach($t as $k){ if(!preg_match("/@{1,}/",$k)){ $cate_arr[$k]=""; $data1=$k; if($k==$_GET['sca']){ $depth=1; } }; if(preg_match("/@{1,}/",$k) && !preg_match("/@{2,}/",$k)){ $m=preg_replace("/@/","",$k); $cate_arr[$data1][$m]=""; $data2=$m; if($m==$_GET['sca']){ $depth=2; } } if(preg_match("/@{2,}/",$k)){ $m=preg_replace("/@{2,}/","",$k); $cate_arr[$data1][$data2][]=$m; if($m==$_GET['sca']){ $depth=3; $depthv=$data2;} } } ?> <select onchange="change_page(this.value)"> <? foreach($cate_arr as $key => $value){ if($key==$_GET['sca']) $mm=$key; foreach($value as $key2 => $value2){ if(is_array($value2)){ foreach($value2 as $key3 => $value3){ if($value3==$_GET['sca']){ $mm=$key; } } } if($key2==$_GET['sca']){ $mm=$key; } } ?> <option value="<?=$key?>"<?=$mm==$key?' selected="selected"':''?>><?=$key?></option> <? } ?> </select> <? if($_GET['sca']!="전체" && $_GET['sca']){ ?> <select onchange="change_page('@'+this.value)"> <option value="">하위 메뉴를 선택하세요</option> <? foreach($cate_arr[$mm] as $key => $value){ ?> <option value="<?=$key?>"<?=($_GET['sca']==$key)||($depthv==$key)?' selected="selected"':''?>><?=$key?></option> <? } ?> </select> <? } ?> <? if( ($depth==2 && count($cate_arr[$mm][$_GET['sca']])>1) || $depth==3){ ?> <select onchange="change_page('@'+this.value)"> <option value="">하위 메뉴를 선택하세요</option> <? foreach($cate_arr[$mm][$_GET['sca']] as $value){ ?> <option value="<?=$value?>"<?=$_GET['sca']==$value?' selected="selected"':''?>><?=$value?></option> <? } ?> <? foreach($cate_arr[$mm][$depthv] as $value){ ?> <option value="<?=$value?>"<?=$_GET['sca']==$value?' selected="selected"':''?>><?=$value?></option> <? } ?> </select> <? } ?> <!-- } 게시판 카테고리 끝 -->
혹시 코드가 필요하실까봐... list.skin.php입니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
작업중인 사이트라 보여드리진 못하구요.

요런 느낌입니다. 아직 디자인도 안입혀져서 눙물이 ㅠㅠ
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
현재 작업중인 사이트에서 3단카테고리를 제작하여 사용하고 있는데요, 간단하게 원리만 말씀드리자면
1차분류|@2차분류|@@3차분류|@@3차분류2|@@3차분류|@2차분류2|@2차분류3|@@3차분류
이런식으로 분류를 만들고 내부적으로 분류를 잘라내서 보여주는 방식입니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인