해당 카테고리를 메인에 출력할수 있을까요?ㅜㅜ 답변좀 부탁드릴게요!! > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

해당 카테고리를 메인에 출력할수 있을까요?ㅜㅜ 답변좀 부탁드릴게요!! 정보

해당 카테고리를 메인에 출력할수 있을까요?ㅜㅜ 답변좀 부탁드릴게요!!

본문

쇼핑몰에서 인기상품.신상품등만 출력하는 건 알겠는데,

예를들어 [캡모자] 라는 카테고리가 있다고 했을때,
이것만 메인에 보여지게할수 없을까요?





                <?
                // 인기상품
                $type = 5;
                if ($default["de_type{$type}_list_use"])
                {
                    echo "<img src='$g4[path]/images/title04.gif' border=0>";
                    display_type($type, $default["de_type{$type}_list_skin"], $default["de_type{$type}_list_mod"], $default["de_type{$type}_list_row"], $default["de_type{$type}_img_width"], $default["de_type{$type}_img_height"]);
                }
                ?>



위에는 인기상품을 출력했을때의 type만 변경하면 다른 신상품,추천상품등만
출력하게끔 하는거는 이해가 되는데,

원하는 카테고리만 출력하게 하는건 잘모르겠네요.
영카트 초보입니다!
알려주세요ㅜㅜㅜ
  • 복사

댓글 전체

원하시는 것이 예를 들어 인기상품의 캡모자라면

<?
                // 인기상품
                $type = 5;
                if ($default["de_type{$type}_list_use"])
                {
                    echo "<img src='$g4[path]/images/title04.gif' border=0>";
                    display_type($type, $default["de_type{$type}_list_skin"], $default["de_type{$type}_list_mod"], $default["de_type{$type}_list_row"], $default["de_type{$type}_img_width"], $default["de_type{$type}_img_height"]);
                }
                ?>

이미지 높이 옆에 캡모자분류코드를 추가만 해주시면 됩니다. 아래 라인 참고

"], $default["de_type{$type}_img_height"], 캡모자분류코드);

===========================================================================================

하지만 캡모자분류에 대한 노출을 하고 싶으시면

제가 짠다면 display_type2 라는 function 를 shop.lib.php 에 추가로 생성합니다.

어렵지 않게 하기 위해서 display_type function 를 복사해서 아래에 붙여 놓기 한 후 함수명만 변경합니다.

function display_type2($type, $skin_file, $list_mod, $list_row, $img_width, $img_height, $ca_id="")
{
    global $member, $g4;

    // 상품의 갯수
    $items = $list_mod * $list_row;

    // 1.02.00
    // it_order 추가
    $sql = " select *
              from $g4[yc4_item_table]
              where it_use = '1'
                and it_type{$type} = '1' ";
    if ($ca_id) $sql .= " and ca_id like '$ca_id%' ";
    $sql .= " order by it_order, it_id desc
              limit $items ";
    $result = sql_query($sql);
    if (!mysql_num_rows($result)) {
        return false;
    }

    $file = "$g4[shop_path]/$skin_file";
    if (!file_exists($file)) {
        echo "<span class=point>{$file} 파일을 찾을 수 없습니다.</span>";
    } else {
        $td_width = (int)(100 / $list_mod);
        include $file;
    }
}

그렇게 하시면 위의 소스와 같을 겁니다.

소스를 보시면 현재 소스는 선택한 타입의 상품만을 누출합니다.

우선 and it_type{$type} = '1' "; 삭제합니다. 하시더라도 "; 까지 지우시면 에러 나겠죠..ㅡㅡ'

그리고 if ($ca_id) $sql .= " and ca_id like '$ca_id%' "; 이 분에서 if ($ca_id) 는 빼버리세요.

분류상품만을 불러 들일 것이므로 조건문 필요 없겠죠.

정리하면

$sql = " select * from $g4[yc4_item_table] where it_use = '1' and ca_id like '$ca_id%' ";

쿼리문은 이렇게 됩니다.

그외에는 고칠 것이 없네요.

굳이 고치신다면 function display_type2($type, $skin_file, 이 부분에서 $type, 이걸 삭제하시면 될 것 같습니다.

이제 사용 안할 변수 니깐요.

이제 최종본 입니다. 아래 참고.

function display_type2($skin_file, $list_mod, $list_row, $img_width, $img_height, $ca_id="")
{
    global $member, $g4;

    // 상품의 갯수
    $items = $list_mod * $list_row;

    // 1.02.00
    // it_order 추가
    $sql = " select * from $g4[yc4_item_table] where it_use = '1' and ca_id like '$ca_id%' ";
    $sql .= " order by it_order, it_id desc
              limit $items ";
    $result = sql_query($sql);
    if (!mysql_num_rows($result)) {
        return false;
    }

    $file = "$g4[shop_path]/$skin_file";
    if (!file_exists($file)) {
        echo "<span class=point>{$file} 파일을 찾을 수 없습니다.</span>";
    } else {
        $td_width = (int)(100 / $list_mod);
        include $file;
    }
}

이렇게 됩니다. 이걸 복사 하셔서 그대로 shop.lib.php 에 추가 하셔도 됩니다.

사용법은

<?
                // 분류상품
                $ca_id = "캡모자분류코드";

                if ($ca_id)
                {
                    echo "<img src='$g4[path]/images/title04.gif' border=0>";
                    display_type2($default["de_type{$type}_list_skin"], $default["de_type{$type}_list_mod"], $default["de_type{$type}_list_row"], $default["de_type{$type}_img_width"], $default["de_type{$type}_img_height"], $ca_id);
                }
                ?>

으로 사용하시면 됩니다.

주의점 $type 이 없으면 추출 리스트 스킨을 못가져 옵니다. 아래 참고

$default["de_type{$type}_list_skin"]에 관련된 스킨파일을 다른 이름으로 저장하신 후 생성 파일명으로

입력하십시오.

예) 복사하신 파일명이 abc.skin.php 라면

display_type2("{파일경로}/abc.skin.php", $default["de_type{$type}_list_mod"], $default["de_type{$type}_list_row"], $default["de_type{$type}_img_width"], $default["de_type{$type}_img_height"], $ca_id);

이렇게 하시면 됩니다. 작은 도움이나마 되었음 하네요.
© SIRSOFT
현재 페이지 제일 처음으로