하위 카테고리 리스트에서 앞에 전체보기 메뉴 만들고 싶습니다...

하위 카테고리 리스트에서 앞에 전체보기 메뉴 만들고 싶습니다...

QA

하위 카테고리 리스트에서 앞에 전체보기 메뉴 만들고 싶습니다...

본문

예를들어 영카트에서

 

상품 분류 : 10 => 생선 (생선 하위카테고리 1010  => 고등어 / 1020 => 동태 / 1030 => 참치) 이렇게 만들었을때 상품10번을 들어가서 보면 위에 카테고리가 

 

생선 상품리스트

고등어   동태   참치    이런식으로 나옵니다.

 

이때 고등어 앞에 전체보기 라는 것을 만들어 전체보기 누르면 상품분류 10번으로 나오게 하려면 어떻게 해야할까요.....  (상품분류 10 / 20 / 30 도 있습니다. 다른 메뉴에도 똑같이 전체보기 누르면 최상단 카테고리가 나오게 하고싶습니다...) 

 


<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$str = '';
$exists = false;
$depth2_ca_id = substr($ca_id, 0, 2);
$sql = " select ca_id, ca_name from {$g5['g5_shop_category_table']} where ca_id like '${depth2_ca_id}%' and length(ca_id) = 4 and ca_use = '1' order by ca_order, ca_id ";
$result = sql_query($sql);
while ($row=sql_fetch_array($result)) {
    if (preg_match("/^{$row['ca_id']}/", $ca_id))
        $sct_ct_here = 'sct_ct_here';
    else
        $sct_ct_here = '';
    $str .= '<li><a href="./list.php?ca_id='.$row['ca_id'].'" class="'.$sct_ct_here.'">'.$row['ca_name'].'</a></li>';
    $exists = true;
}
if ($exists) {
    // add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
    add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_CSS_URL.'/style.css">', 0);
?>
<!-- 상품분류 3 시작 { -->
<aside id="sct_ct_3" class="sct_ct">
    <h2>현재 상품 분류와 관련된 분류</h2>
    <ul>
        <?php echo $str; ?>
    </ul>
</aside>
<!-- } 상품분류 3 끝 -->
<?php } ?>

이 질문에 댓글 쓰기 :

답변 1


while ($row=sql_fetch_array($result)) {
    if (preg_match("/^{$row['ca_id']}/", $ca_id))
        $sct_ct_here = 'sct_ct_here';
    else
        $sct_ct_here = '';
    $str .= '<li><a href="./list.php?ca_id='.$row['ca_id'].'" class="'.$sct_ct_here.'">'.$row['ca_name'].'</a></li>';
    $exists = true;
}
이부분을
for ($i=0;$row=sql_fetch_array($result);$i++) {
    if($i==0){
         $str .= '<li><a href="./list.php?ca_id='.substr($row['ca_id'],2).'" class="'.$sct_ct_here.'">전체</a></li>';
    }
    if (preg_match("/^{$row['ca_id']}/", $ca_id))
        $sct_ct_here = 'sct_ct_here';
    else
        $sct_ct_here = '';
    $str .= '<li><a href="./list.php?ca_id='.$row['ca_id'].'" class="'.$sct_ct_here.'">'.$row['ca_name'].'</a></li>';
    $exists = true;
}
이렇게 수정해보세요
 

$str .= '<li><a href="./list.php?ca_id='.substr($row['ca_id'],2).'" class="'.$sct_ct_here.'">전체</a></li>';  이부분에서  substr($row['ca_id'],2)  가 잘못됐네요  substr($row['ca_id'],0,2) 이로 수정하면 정상으로 되네요. 근데 .. 전에 소스대로 해도 그냥 전체의 링크가 틀릴뿐 아예화면이 않나오지는 않겠는데요.. 화면이 않나온다는건 어디 오류가 있어서 그런건데  이부분 소스를 제가 테스트 해봤는데 오류는 없었어요 ..

제가 초보라서 정말 죄송합니다...

기존 $str .= '<li><a href="./list.php?ca_id='.$row['ca_id'].'" class="'.$sct_ct_here.'">'.$row['ca_name'].'</a></li>'; 코드를

$str .= '<li><a href="./list.php?ca_id='.substr($row['ca_id'],0,2).'" class="'.$sct_ct_here.'">전체 '.$row['ca_name'].'</a></li>'; 수정하면

메뉴가 전체 전체 전체 전체 이런식으로 나오네요 ㅠㅠ 번거롭게 해드려서 죄송합니다.

앞에 "전체"가 나오고 그 뒤에는 서브 카테고리들이 쭉 나열되게 하고 싶습니다...

답변을 작성하시기 전에 로그인 해주세요.
전체 6
QA 내용 검색

회원로그인

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