채택완료

쇼핑몰 메인화면에 전체상품목록 출력 시 정렬 질문 입니다.

2016-05-31 (화) 11:12:52 5,388

테마/basic/shop/index.php 에 인기상품이나 할인상품 같이 분류별로 노출하지 않고

등록된 상품 전체를 출력하는 건 검색을 통해서 아래 두개를 찾아 적용 해봤습니다.

Copy
section class="sct_wrap">     <header>         <h2><a href="#">최신등록</a></h2>         <p class="sct_wrap_hdesc"><?php echo $config['cf_title']; ?> 최신등록 상품</p>     </header>     <?php //---------------- 여기부터  $skin_file = G5_SHOP_SKIN_PATH .'/main.50.skin.php'; //스킨명(기존 것을 사용하거나 새로이 만들거나)  $item_mod = 5; //한줄당 갯수  $item_rows = 3; //줄 수  $item_width= 120; //이미지 가로  $item_height = 120; //이미지 세로  $order_by = "it_update_time desc"; // 최신등록순  $list = new item_list($skin_file, $item_mod , $item_rows , $item_width, $item_height);  $list->set_order_by($order_by); //---------- 여기까지     $list->set_view('it_img', true);     $list->set_view('it_id', true);     $list->set_view('it_name', true);     $list->set_view('it_basic', true);     $list->set_view('it_cust_price', true);     $list->set_view('it_price', true);     $list->set_view('it_icon', true);     $list->set_view('sns', true);     echo $list->run();     ?> </section>
Copy
<div>    <?php    $list = new item_list();    $list->set_category('20', 1);    $list->set_list_mod(3);    $list->set_list_row(1);    $list->set_img_size(230, 230);    $list->set_list_skin(G5_SHOP_SKIN_PATH.'/list.10.skin.php');    $list->set_view('it_img', true);    $list->set_view('it_id', true);    $list->set_view('it_name', true);    $list->set_view('it_basic', true);    $list->set_view('it_cust_price', true);    $list->set_view('it_price', true);    $list->set_view('it_icon', true);    $list->set_view('sns', true);    echo $list->run();    ?></div>

그리고 그 전체 상품들을 list.sort.skin.php의

Copy
<?phpif (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 $sct_sort_href = $_SERVER['SCRIPT_NAME'].'?';if($ca_id)    $sct_sort_href .= 'ca_id='.$ca_id;else if($ev_id)    $sct_sort_href .= 'ev_id='.$ev_id;if($skin)    $sct_sort_href .= '&amp;skin='.$skin;$sct_sort_href .= '&amp;sort='; // add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_CSS_URL.'/style.css">', 0);?> <!-- 상품 정렬 선택 시작 { --> <div class="prd_list_align">    <!-- <section id="sct_sort"> -->    <!-- <h2>상품 정렬</h2> -->     <!-- <ul>        <li><a href="<?php echo $sct_sort_href; ?>it_price&amp;sortodr=asc" class="btn01">낮은가격순</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_price&amp;sortodr=desc" class="btn01">높은가격순</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_name&amp;sortodr=asc" class="btn01">상품명순</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_type1&amp;sortodr=desc" class="btn01">히트상품</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_type2&amp;sortodr=desc" class="btn01">추천상품</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_type3&amp;sortodr=desc" class="btn01">최신상품</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_type4&amp;sortodr=desc" class="btn01">인기상품</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_type5&amp;sortodr=desc" class="btn01">할인상품</a></li>    </ul> -->     <ul >        <li><a href="<?php echo $sct_sort_href; ?>it_sum_qty&amp;sortodr=desc">인기순</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_update_time&amp;sortodr=desc">신상품순</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_price&amp;sortodr=desc">높은가격순</a></li>        <li><a href="<?php echo $sct_sort_href; ?>it_price&amp;sortodr=asc">낮은가격순</a></li>         <!-- <li><a href="<?php //echo $sct_sort_href; ?>it_use_avg&amp;sortodr=desc" class="btn01">평점높은순</a></li>        <li><a href="<?php //echo $sct_sort_href; ?>it_use_cnt&amp;sortodr=desc" class="btn01">후기많은순</a></li> -->     </ul>    <!-- </section> -->    <!-- } 상품 정렬 선택 끝 --> </div>

이 코드를 첫페이지에 불러와서 최신순, 인기순이나 높은,낮은가격순을 클릭해서 정렬시키려고 하는데 먹히질 않네요.

이 상품정렬 코드가 첫페이지가 아닌 각 상품 분류별 페이지에서는 문제없이 작동해서 활용하고 싶은데... 

이걸 index.php에서 어떻게 쓸 수 있는지 이게 안되면 어떤 방식으로 써야할지 답변 해주시면 정말 감사하겠습니다 ㅜㅜ 

|

답변 1개 / 댓글 2개

채택된 답변
+20 포인트

링크를 다음처럼 만듭니다

<a href="<?php echo G5_URL; ?>/?sort=it_price&amp;sortodr=asc" class="btn01">낮은가격순</a>


index.php에서 위 소스 중 수정할 부분 ($order_by =~~)

if(!$sort){$sort = 'it_updatetime'; sortodr = 'desc'; }//기본 정렬

$order_by = $sort.' '.$sortdir; 

  

답변에 대한 댓글 2개

끙끙 앓다가 다른 꼼수로 겨우 했는데 이게 훨씬 간편하고 이해가 잘 되네요. 감사합니다!!
$sortdir ---> $sortodr 오타 입니다

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