item_icon 함수 잔존 태그 제거하기 > 영카트5 팁자료실

영카트5 팁자료실

item_icon 함수 잔존 태그 제거하기 정보

item_icon 함수 잔존 태그 제거하기

본문

상품에 지정된 유형(히트,인기,추천... 같은 상품유형)이 없는 경우가 있습니다.
sit_icon 클래스에 여백이나 높이 같은 스타일이 지정된 경우 상품유형이 없어도 아이콘 스타일 부분이 그대로 화면에 표시되게 됩니다.

lib/shop.lib.php 파일에서 item_icon 함수를 수정하여 상품유형이 지정되지 않은 경우 sit_icon 태그 자체를 표시하지 않게 하여 이 문제를 해결해보겠습니다.

lib/shop.lib.php 의 item_icon($it) 를 다음 코드로 대체해주세요.

// 상품이미지에 유형 아이콘 출력
function item_icon($it)
{
    global $g5;

    // 쿠폰상품
    $sql = " select count(*) as cnt
                from {$g5['g5_shop_coupon_table']}
                where cp_start <= '".G5_TIME_YMD."'
                  and cp_end >= '".G5_TIME_YMD."'
                  and (
                        ( cp_method = '0' and cp_target = '{$it['it_id']}' )
                        OR
                        ( cp_method = '1' and ( cp_target IN ( '{$it['ca_id']}', '{$it['ca_id2']}', '{$it['ca_id3']}' ) ) )
                      ) ";
    $row = sql_fetch($sql);

    if (is_soldout($it['it_id']) || $it['it_type1'] || $it['it_type2'] || $it['it_type3'] || $it['it_type4'] || $it['it_type5'] || $row['cnt']) $is_icon = 1;
    else $is_icon = 0;

    $icon = '';
    if ($is_icon) $icon .= '<span class="sit_icon">';
    // 품절
    if (is_soldout($it['it_id']))
        $icon .= '<img src="'.G5_SHOP_URL.'/img/icon_soldout.gif" alt="품절">';

    if ($it['it_type1'])
        $icon .= '<img src="'.G5_SHOP_URL.'/img/icon_hit.gif" alt="히트상품">';

    if ($it['it_type2'])
        $icon .= '<img src="'.G5_SHOP_URL.'/img/icon_rec.gif" alt="추천상품">';

    if ($it['it_type3'])
        $icon .= '<img src="'.G5_SHOP_URL.'/img/icon_new.gif" alt="최신상품">';

    if ($it['it_type4'])
        $icon .= '<img src="'.G5_SHOP_URL.'/img/icon_best.gif" alt="인기상품">';

    if ($it['it_type5'])
        $icon .= '<img src="'.G5_SHOP_URL.'/img/icon_discount.gif" alt="할인상품">';

    if($row['cnt'])
        $icon .= '<img src="'.G5_SHOP_URL.'/img/icon_cp.gif" alt="쿠폰상품">';

    if ($is_icon) $icon .= '</span>';

    return $icon;
}



##########

영카트 패치가 많이 밀렸을 땐?

http://minsup.kr/ms-item.php?pds_id=30

##########
추천
3

댓글 6개

최적화가 되는 내용인 것같은데요. 이걸 보고나서 저희 홈페이지에 궁금한 것이 품절 아이콘만 발생하게 구문을 수정하고 품절일시 아이콘이 표시되게 list.php에서 적용을 하게되면 사이트 속도가 페이지 한 곳에 들어가려고만 해도 2-3분걸리게끔 느려지는데 이 방법과 그러한 부분에 대해서 연관성이 있다면 해결방책에 도움이 될까 궁금합니다.
구문을 어떻게 수정하셨는지 일단 궁금하구요. item_icon 함수를 올려주시면 저 말고도 다른 분들이 함께 봐주실 것 같습니다.
그리고 이 팁 자체로 사이트 속도가 느려지는 현상이 생길 가능성은 거의 없을 것 같습니다. ^^;;
최적화라기보다는 <span class="sit_icon"></span> 이라는 빈 태그가 생기는 것을 방지하는 코드입니다.
디자인+퍼블리싱할 때 유용하게 사용하실 수 있는 팁이에요.
기존 list.ph에서 아이콘이 출력되는 부분을 주석처리하였구요.  shop.lib 에서 히트상품 이런 것들은 주석처리하고 품절만 표시되게 수정하였습니다. 지금은 아이콘 출력을 막아놨기에 다른 것들도 function item_icon($it)으로 시작되는 부분에서 항목별로 해두었던 부분의 주석은 그냥 풀어두었습니다.
list.php 부분  // $list->set_view('it_icon', true); 에 주석이 풀리는순간 너무 과부화가 걸렸는데 명확한 답을 찾지 못하여 혹시나 질문드려봤습니다.
전체 392
영카트5 팁자료실 내용 검색

회원로그인

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