영카트 카테고리 분류별 정렬시 1차 2차 3차 구분해서 가져오기 > 영카트5 팁자료실

영카트5 팁자료실

영카트 카테고리 분류별 정렬시 1차 2차 3차 구분해서 가져오기 정보

영카트 카테고리 분류별 정렬시 1차 2차 3차 구분해서 가져오기

본문

영카트에서 분류 정렬순서를 변경하면 순서대로만 나와서 분류구분이 되지 않아 순서대로
정렬시 1차 2차 3차 범위안에서 낮은 순서대로 정렬
1차카테고리 순서가 낮은 것 부터 정렬후 하위 카테고리가 있으면 하위 카테고리도 낮은순서로 정렬된
리스트를 가져오게 했습니다.
자료를 찾다 못찾아 그냥 만들었습니다.
저와 같이 고민하시는 분이 있을까 해서 소스를 올려봅니다.

// lib/shop.lib.php 경로 맨하단에 추가

/************************************************************************/
/* shop.lib.php 파일*/
/************************************************************************/
//카테고리 정렬 select
function get_select_category($name,$selected=''){
    $option_txt ="<option value=''>전체분류</option>";
    //1차카테고리 가져오기
    $sql ="select ca_id, ca_name from g5_shop_category where length(ca_id) ='2' order by ca_order,

ca_id ";
    $result =sql_query($sql);
    while($row =sql_fetch_array($result)){
        if($selected == $row['ca_id']){
            $selected1 ="selected";
        }else{
            $selected1 ="";
        }
        $option_txt .="<option value='".$row['ca_id']."' ".$selected1.">".$row

['ca_name']."</option>";
        //2차 카테고리 가져오기
        $sql2 ="select ca_id, ca_name from g5_shop_category where length(ca_id) ='4' and ca_id like

'{$row['ca_id']}%' order by ca_order, ca_id ";
        $result2 =sql_query($sql2);
        while($row2 =sql_fetch_array($result2)){
          // echo $selected."||".$row2['ca_id']."<br>";
            if($selected == $row2['ca_id']){
                $selected2 ="selected";
            }else{
                $selected2 ="";
            }
            $option_txt .="<option value='".$row2['ca_id']."' ".$selected2."> &nbsp;&nbsp;&nbsp;".

$row2['ca_name']."</option>";
            //3차 카테고리 가져오기
            $sql3 ="select ca_id, ca_name from g5_shop_category where length(ca_id) ='6' and ca_id

like '{$row2['ca_id']}%' order by ca_order, ca_id ";
            $result3 =sql_query($sql3);
            while($row3 =sql_fetch_array($result3)){
                if($selected == $row3['ca_id']){
                    $selected3 ="selected";
                }else{
                    $selected3 ="";
                }
                //3차 카테고리 가져오기
                $option_txt .="<option value='".$row3['ca_id']."' ".$selected3.">

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$row3['ca_name']."</option>";
            }
        }
    }
    $str = "<select id='".$name."' name='".$name."'>".$option_txt."</select>";
    return $str;
}



/************************************************************************/
/* /adm/shop_admin/itemlist.php 파일*/
/* select box 부분은 주석처리후 아래 소스로 대체 합니다.
        $get_cate= get_select_category("sca");
        echo($get_cate); */

/************************************************************************/
<label for="sca" class="sound_only">분류선택</label>
    <?php
    $get_cate= get_select_category("sca");
    echo($get_cate);
    ?>
<!--<select name="sca" id="sca">
    <option value="">전체분류</option>
    <?php
/*    $sql1 = " select ca_id, ca_name from {$g5['g5_shop_category_table']} order by ca_order, ca_id

";
    $result1 = sql_query($sql1);
    for ($i=0; $row1=sql_fetch_array($result1); $i++) {
        $len = strlen($row1['ca_id']) / 2 - 1;
        $nbsp = '';
        for ($i=0; $i<$len; $i++) $nbsp .= '&nbsp;&nbsp;&nbsp;';
        echo '<option value="'.$row1['ca_id'].'" '.get_selected($sca, $row1['ca_id']).'>'.$nbsp.

$row1['ca_name'].'</option>'.PHP_EOL;
    }
    */?>
</select>-->


<td colspan="5" class="td_sort">
            <label for="ca_id_<?php echo $i; ?>" class="sound_only"><?php echo get_text($row

['it_name']); ?> 기본분류</label>
          <!-- <select name="ca_id[<?php /*echo $i; */?>]" id="ca_id_<?php /*echo $i; */?>">
                <?php /*echo conv_selected_option($ca_list, $row['ca_id']); */?>
            </select>-->
            <?php
            $get_cate= get_select_category("ca_id[$i]",$row['ca_id']);
            echo($get_cate);
            ?>
            <label for="ca_id2_<?php echo $i; ?>" class="sound_only"><?php echo get_text($row

['it_name']); ?> 2차분류</label>
            <!--<select name="ca_id2[<?php /*echo $i; */?>]" id="ca_id2_<?php /*echo $i; */?>">
                <?php /*echo conv_selected_option($ca_list, $row['ca_id2']); */?>
            </select>-->
            <?php
         
            $get_cate2= get_select_category("ca_id2[$i]",$row['ca_id2']);
            echo($get_cate2);
            ?>
            <label for="ca_id3_<?php echo $i; ?>" class="sound_only"><?php echo get_text($row

['it_name']); ?> 3차분류</label>
            <!--<select name="ca_id3[<?php /*echo $i; */?>]" id="ca_id3_<?php /*echo $i; */?>">
                <?php /*echo conv_selected_option($ca_list, $row['ca_id3']); */?>
            </select>-->
            <?php
            $get_cate3= get_select_category("ca_id3[$i]",$row['ca_id3']);
            echo($get_cate3);
            ?>
        </td>
추천
1

댓글 3개

전체 2

회원로그인

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