채택완료

카테고리별로 인기상품 리스트를 다르게 불러고오싶은데요..

2017-09-11 (월) 16:09:55 6,220

list.php 파일을 수정하는 중인데, 

지금은 아래와 같이 소스를 쓰고있어서 어떤 카테고리를 들어가도 ca_id=10에있는 베스트 상품만 보이게 

되어있어요 ㅠ_ㅠ

https://sir.kr/yc5_tip/478?page=3 

이 글을 보고 수정을 해보려고했는데, 수정이 되질 않네요..

11ed7348365617cb8e2083fe972f53cc_1505113753_8869.jpg
 

이렇게 모바일처럼 각각 카테고리별 히트상품을 불러오고싶은데 어떻게 해야할까요?

꼭 카테고리별로 불러와달라고 하셔서.... ㅇ<-<  모바일 소스 가져와서 이리저리 고쳐봐도 

카테고리별로 안불러와지고.. 능력밖이네요..

Copy
<?php if($default['de_type4_list_use']) { ?><!-- 인기상품 시작 { -->    <?php    $list = new item_list();    $list->set_type(4); // 히트상품유형    $list->set_category('10', 1);    $list->set_view('it_id', false);    $list->set_view('it_name', false);    $list->set_view('it_basic', false);    $list->set_view('it_cust_price', false);    $list->set_view('it_price', false);    $list->set_view('it_icon', false);    $list->set_view('sns', false);    echo $list->run();    ?><!-- } 인기상품 끝 --><?php } ?>

전체소스는 이렇습니다 :(

Copy
<?phpinclude_once('./_common.php');if (G5_IS_MOBILE) {    include_once(G5_MSHOP_PATH.'/list.php');    return;}$sql = " select * from {$g5['g5_shop_category_table']} where ca_id = '$ca_id' and ca_use = '1'  ";$ca = sql_fetch($sql);if (!$ca['ca_id'])    alert('등록된 분류가 없습니다.');// 테마미리보기 스킨 등의 변수 재설정if(defined('_THEME_PREVIEW_') && _THEME_PREVIEW_ === true) {    $ca['ca_skin']       = (isset($tconfig['ca_skin']) && $tconfig['ca_skin']) ? $tconfig['ca_skin'] : $ca['ca_skin'];    $ca['ca_img_width']  = (isset($tconfig['ca_img_width']) && $tconfig['ca_img_width']) ? $tconfig['ca_img_width'] : $ca['ca_img_width'];    $ca['ca_img_height'] = (isset($tconfig['ca_img_height']) && $tconfig['ca_img_height']) ? $tconfig['ca_img_height'] : $ca['ca_img_height'];    $ca['ca_list_mod']   = (isset($tconfig['ca_list_mod']) && $tconfig['ca_list_mod']) ? $tconfig['ca_list_mod'] : $ca['ca_list_mod'];    $ca['ca_list_row']   = (isset($tconfig['ca_list_row']) && $tconfig['ca_list_row']) ? $tconfig['ca_list_row'] : $ca['ca_list_row'];}// 본인인증, 성인인증체크if(!$is_admin) {    $msg = shop_member_cert_check($ca_id, 'list');    if($msg)        alert($msg, G5_SHOP_URL);}$g5['title'] = $ca[''].'';if ($ca['ca_include_head'])    @include_once($ca['ca_include_head']);else    include_once(G5_SHOP_PATH.'/_head.php');// 스킨경로$skin_dir = G5_SHOP_SKIN_PATH;if($ca['ca_skin_dir']) {    if(preg_match('#^theme/(.+)$#', $ca['ca_skin_dir'], $match))        $skin_dir = G5_THEME_PATH.'/'.G5_SKIN_DIR.'/shop/'.$match[1];    else        $skin_dir = G5_PATH.'/'.G5_SKIN_DIR.'/shop/'.$ca['ca_skin_dir'];    if(is_dir($skin_dir)) {        $skin_file = $skin_dir.'/'.$ca['ca_skin'];        if(!is_file($skin_file))            $skin_dir = G5_SHOP_SKIN_PATH;    } else {        $skin_dir = G5_SHOP_SKIN_PATH;    }}define('G5_SHOP_CSS_URL', str_replace(G5_PATH, G5_URL, $skin_dir));?><script>var itemlist_ca_id = "<?php echo $ca_id; ?>";</script><script src="<?php echo G5_JS_URL; ?>/shop.list.js"></script><!-- 상품 목록 시작 { --><div id="sct"><section class="sct_wrap">    <table border="0" width="1200px" cellspacing="0" cellpadding="0">        <tr><td colspan="2" height="80"></td></tr>        <tr>            <td valign="top">    <?php        // 상단 HTML    echo '<div id="sct_hhtml">'.conv_content($ca['ca_head_html'], 1).'</div>';    $cate_skin = $skin_dir.'/listcategory.skin.php';    if(!is_file($cate_skin))        $cate_skin = G5_SHOP_SKIN_PATH.'/listcategory.skin.php';    include $cate_skin;    ?>     </td>    <td><?php if($default['de_type4_list_use']) { ?><!-- 인기상품 시작 { -->    <?php    $list = new item_list();    $list->set_type(4); // 히트상품유형    $list->set_category('10', 1);    $list->set_view('it_id', false);    $list->set_view('it_name', false);    $list->set_view('it_basic', false);    $list->set_view('it_cust_price', false);    $list->set_view('it_price', false);    $list->set_view('it_icon', false);    $list->set_view('sns', false);    echo $list->run();    ?><!-- } 인기상품 끝 --><?php } ?>        </td>    </tr>    <tr>            <td colspan="2">    <?php if ($is_admin)        echo '<div class="sct_admin"><a href="'.G5_ADMIN_URL.'/shop_admin/categoryform.php?w=u&amp;ca_id='.$ca_id.'" class="btn_admin">분류 관리</a></div>'; ?>                    </td>        </tr></table><table><tr><td height="50px"></td></tr></table>    <?php    // 상품 출력순서가 있다면    if ($sort != "")        $order_by = $sort.' '.$sortodr.' , it_order, it_id desc';    else        $order_by = 'it_order, it_id desc';    $error = '<p class="sct_noitem">등록된 상품이 없습니다.</p>';    // 리스트 스킨    $skin_file = $skin_dir.'/'.$ca['ca_skin'];    if (file_exists($skin_file)) {        echo '<div id="sct_sortlst">';        $sort_skin = $skin_dir.'/list.sort.skin.php';        if(!is_file($sort_skin))            $sort_skin = G5_SHOP_SKIN_PATH.'/list.sort.skin.php';        include $sort_skin;        // 상품 보기 타입 변경 버튼        //$sub_skin = $skin_dir.'/list.sub.skin.php';        //if(!is_file($sub_skin))        //    $sub_skin = G5_SHOP_SKIN_PATH.'/list.sub.skin.php';        //include $sub_skin;        //echo '</div>';        // 총몇개 = 한줄에 몇개 * 몇줄        $items = $ca['ca_list_mod'] * $ca['ca_list_row'];        // 페이지가 없으면 첫 페이지 (1 페이지)        if ($page < 1) $page = 1;        // 시작 레코드 구함        $from_record = ($page - 1) * $items;        $list = new item_list($skin_file, $ca['ca_list_mod'], $ca['ca_list_row'], $ca['ca_img_width'], $ca['ca_img_height']);        $list->set_category($ca['ca_id'], 1);        $list->set_category($ca['ca_id'], 2);        $list->set_category($ca['ca_id'], 3);        $list->set_is_page(true);        $list->set_order_by($order_by);        $list->set_from_record($from_record);        $list->set_view('it_img', true);        $list->set_view('it_id', false);        $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();        // where 된 전체 상품수        $total_count = $list->total_count;        // 전체 페이지 계산        $total_page  = ceil($total_count / $items);    }    else    {        echo '<div class="sct_nofile">'.str_replace(G5_PATH.'/', '', $skin_file).' 파일을 찾을 수 없습니다.<br>관리자에게 알려주시면 감사하겠습니다.</div>';    }    ?>                <?php    $qstr1 .= 'ca_id='.$ca_id;    $qstr1 .='&amp;sort='.$sort.'&amp;sortodr='.$sortodr;    echo get_paging($config['cf_write_pages'], $page, $total_page, $_SERVER['SCRIPT_NAME'].'?'.$qstr1.'&amp;page=');    ?>    <?php    // 하단 HTML    echo '<div id="sct_thtml">'.conv_content($ca['ca_tail_html'], 1).'</div>';?></div></section><!-- } 상품 목록 끝 --><?phpif ($ca['ca_include_tail'])    @include_once($ca['ca_include_tail']);else    include_once(G5_SHOP_PATH.'/_tail.php');echo "\n<!-- {$ca['ca_skin']} -->\n";?>
|

답변 3개 / 댓글 3개

채택된 답변
+20 포인트
2017-09-11 (월) 16:35:05

단편적으로 보고 답변드리면,

<?php if($default['de_type4_list_use']) { ?>

<!-- 인기상품 시작 { -->

    <?php

    $list = new item_list();

    $list->set_type(4); // 히트상품유형

    $list->set_category('10', 1);

    $list->set_view('it_id', false);

    $list->set_view('it_name', false);

    $list->set_view('it_basic', false);

    $list->set_view('it_cust_price', false);

    $list->set_view('it_price', false);

    $list->set_view('it_icon', false);

    $list->set_view('sns', false);

    echo $list->run();

    ?>

<!-- } 인기상품 끝 -->

<?php } ?>

를

<!-- 인기상품 시작 { -->

    <?php

    $list = new item_list();

    $list->set_type(4); // 히트상품유형

    $list->set_category($ca['ca_id'], 1);

    $list->set_view('it_id', false);

    $list->set_view('it_name', false);

    $list->set_view('it_basic', false);

    $list->set_view('it_cust_price', false);

    $list->set_view('it_price', false);

    $list->set_view('it_icon', false);

    $list->set_view('sns', false);

    echo $list->run();

    ?>

<!-- } 인기상품 끝 -->

혹은

<!-- 인기상품 시작 { -->

    <?php

    $list = new item_list();

    $list->set_type(4); // 히트상품유형

    $list->set_category($ca_id, 1);

    $list->set_view('it_id', false);

    $list->set_view('it_name', false);

    $list->set_view('it_basic', false);

    $list->set_view('it_cust_price', false);

    $list->set_view('it_price', false);

    $list->set_view('it_icon', false);

    $list->set_view('sns', false);

    echo $list->run();

    ?>

<!-- } 인기상품 끝 -->

로 수정하시면 될 것 같습니다.


답변에 대한 댓글 2개

$list->set_category($ca['ca_id'], 1);로 하니까 되네요 ㅠㅠㅠ 정말 감사해요.. 하루종일 씨름해서 울고싶었는데... $ca['ca_id']를 왜 위에다 주고 난리를 친건지 ㅠ_ㅠ 정말 감사합니다..!!!! 바로 되네요...
아 이제 보니 상품유형에 찍어서 쓰시는 거군요. 조건식 제거 안하고 set_category 값만 수정하시면 되겠습니다.

원글을 수정하고싶은데 답글이 달리면 수정이 안되네요 .. 카테고리 각각 페이지에 들어갔을 때 그 카테고리에 히트상품이 보였으면 합니다 ㅠㅠ!

2017-09-11 (월) 16:12:57

$list->set_category('10', 1); 

이걸 원하는 카테고리명을 넣어주시면 됩니다.

답변에 대한 댓글 1개

조금 더 상세하게 설명해주실수 있으실까요 ㅠㅠ? 10을 넣으면 모든 메뉴에 10의 베스트 상품만 보이고 20을 넣으면 20 상품만 보이는데.. 초보라서 잘 모르겠네요..

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