질문과 답변 (구)

최근본상품
TOP
DOWN

질문과 답변 (구)

상품판매수를 표시하고 싶습니다

2017.09.14 07:45 178 14

본문

쇼핑몰 아이템에 실제 판매개수를 표현하고 싶어서 그누팁을 찾았는데 이윰의 구조와 변수가 달라서 적용이 안되네요

어떻게 하면 되는지 부탁드립니다

아래는 그누서 찾은 팁입니다

 

adm/shop_admin/itemlist.php 파일을 수정해주시면 됩니다


(1) 조건 정렬을 위한 값 함수 정의 
-----------------------------------------------
변경전 164줄 부근
-----------------------------------------------
    <?php
    for ($i=0; $row=sql_fetch_array($result); $i++)
    {
        $href = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];
        $bg = 'bg'.($i%2);

        $it_point = $row['it_point'];
        if($row['it_point_type'])
            $it_point .= '%';
    ?>
-----------------------------------------------
변경후 (상품판매갯수를 구하는 합계 구하는 함수)
-----------------------------------------------
    <?php
    for ($i=0; $row=sql_fetch_array($result); $i++)
    {
        $href = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];
        $bg = 'bg'.($i%2);

        $it_point = $row['it_point'];
        if($row['it_point_type'])
            $it_point .= '%';

        // 상품판매갯수 합계 ($sales_qty)
        $sales_qty = 0;
        $sql_sales_qty = " select count(*) as cnt, sum(ct_qty) as qty from {$g5['g5_shop_cart_table']} where ct_status = '완료' and it_id = '$it_id' ";
        $sales = sql_fetch($sql_sales_qty);
        $sales_qty = (int)$sales['qty'];
    ?>
-----------------------------------------------------------------


(2) 상품목록 출력되는 판매수 출력 추가

- 주의해서 상품목록의 적당한 위치에 추가하시면 됩니다
- 열을 새로 추가해야하는 경우에는 제목출력되는곳도 동일하게 열을 추가하셔야 합니다
- 여기에는 단순히 판매수 만 출력하는 함수만 보여드립니다.
- 폰트색상을 바꾸거나 하는 것들은 직접 꾸미시면됩니다

------------------------------------------------------------------
상품판매수 출력
------------------------------------------------------------------

    <!-- 상품판매수 출력 { -->
    <?php echo ($sales_qty > '0') ? '<font style="color:#3498DB;">'.number_format($sales_qty).'개</font>' : '<font style="color:#3498DB;">-</font>';//판매상품갯수?>
    <!-- } 상품판매수 출력 끝// -->
 

0
로그인 후 평가 가능합니다.
- gang - 회원등급 : 지상계 / Level 15
포인트 6,777
경험치 21,254
[레벨 15] - 진행률 9%
- 가입일 : 2017-08-01 21:23:03
- 서명 : 미입력
- 자기소개 : 자유로운 영혼

댓글목록 14

이윰IN님의 댓글

이윰IN 2017.09.14 09:16

아.. 그러니까.
관리자모드 > 쇼핑몰관리 > 상품관리의 목록에 상품판매 갯수를 표현하고 싶으신 거군요.
다음과 같이 해 보시겠아요?

-- 다음 --
1. /admin/core/shop/itemlist.php 파일 소스 추가
[수정전]

	$list[$i]['href'] = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];
	$list[$i]['image'] = str_replace("\"","'",get_it_image($row['it_id'], 160, 160));

	$list_num = $total_count - ($page - 1) * $rows;
    $list[$i]['num'] = $list_num - $k;
    $k++;


[수정후]
	$list[$i]['href'] = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];
	$list[$i]['image'] = str_replace("\"","'",get_it_image($row['it_id'], 160, 160));

	// 총판매수
	$sales = sql_fetch("select sum(ct_qty) as qty from {$g5['g5_shop_cart_table']} where find_in_set(ct_status, '입금,준비,배송,완료') > 0 and it_id = '{$row['it_id']}' ");
	$list[$i]['sales'] = $sales['qty'];

	$list_num = $total_count - ($page - 1) * $rows;
    $list[$i]['num'] = $list_num - $k;
    $k++;


2. /admin/admin_theme/admin_basic/skin_bs/shop/basic/itemlist.skin.html 파일 소스 수정
[수정전 : #1]
	        상품코드_상품명: "<a href='{.href}' target='_blank' style='font-weight:bold;'><span style='color:#aaa;'>{.it_id}</span><br>{=get_text(.it_name)}</a>",


[수정후 : #1]
	        상품코드_상품명: "<a href='{.href}' target='_blank' style='font-weight:bold;'><span style='color:#aaa;'>{.it_id}</span><br>{=get_text(.it_name)}</a>",
	        총판매수량: "{=number_format(.sales)}",


------
[수정전 : #2]

            { name: "상품코드_상품명", type: "text", width: 250 },


[수정후 : #2]

            { name: "상품코드_상품명", type: "text", width: 250 },
            { name: "총판매수량", type: "number", width: 80 },


참고로 총판매수량은 주문상태가 "입금,준비,배송,완료"에 해당하는 주문에 대하여 합계를 구한 것입니다.
원하시는 상태에 맞게 위 소스를 수정하시면 됩니다.

이 부분은 다음 버전에 포함하여 패치하도록 하겠습니다.
좋은 의견 주셔서 감사드립니다.
오늘도 멋진 하루 되세요.

축하합니다. 첫댓글 포인트 45포인트를 획득하였습니다.

gang님의 댓글

gang 2017.09.14 09:19

헉 패치결정까지 ^^ 반갑네요 감사합니다
한가지 추가로 관리자 페이지가 아닌 쇼핑몰에서 제품옆에 일정 레벨 이상은 볼수 있게 하려면 위 소스를 불러오면 되나요?
레벨별 표현은 설명서에 있어서 알고 있습니다

이윰IN님의 댓글

이윰IN 2017.09.14 10:05

관리자 리스트가 아닌 쇼핑몰 상품 리스트에서 판매 수량을 표현하고자 하시는 군요.
다음과 같이 해 보세요.

-- 다음 --
1. /eyoom/core/shop/list.10.skin.php ~ list.40.skin.php 파일 및 main.10.skin.php ~ main.50.skin.php 및 relation.10.skin.php  파일 소스 수정
[수정전]

	// 고객선호도 별점수
	$row['star_score'] = get_star_image($row['it_id']);
	
	$list[$i] = $row;
}
$count = count($list);


[수정후]
	// 고객선호도 별점수
	$row['star_score'] = get_star_image($row['it_id']);
	
	$list[$i] = $row;
	
	// 총판매수
	$sales = sql_fetch("select sum(ct_qty) as qty from {$g5['g5_shop_cart_table']} where find_in_set(ct_status, '입금,준비,배송,완료') > 0 and it_id = '{$row['it_id']}' ");
	$list[$i]['sales'] = $sales['qty'];
}
$count = count($list);


2. 각 상품출력 리스트 스킨파일에서 원하는 위치에 아래 소스를 복사하여 붙여넣기 하세요.
1) 대상 스킨파일 :
    /eyoom/theme/테마명/skin_bs/shop/basic/list.10.skin.html ~ list.40.skin.html
    /eyoom/theme/테마명/skin_bs/shop/basic/main.10.skin.html ~ list.50.skin.html
    /eyoom/theme/테마명/skin_bs/shop/basic/relation.10.skin.html

2) 입력 소스 : 그누회원레벨이 5레벨보다 큰 회원에게만 판매수량 노출
{? member.mb_level > 5} ({=number_format(.sales)}){/}


위와 같이 적용해 보세요.
감사합니다.

gang님의 댓글

gang 2017.09.14 10:15

쇼핑몰에 오류가 나는 것 같습니다
원상으로 회복해보겠습니다

이윰IN님의 댓글

이윰IN 2017.09.14 10:18

테스트 해 보고 올려 놓은 겁니다.
다시 한번 적용해 보세요.

gang님의 댓글

gang 2017.09.14 09:31

1. /admin/core/shop/itemlist.php 파일 소스 추가 --> 이 파일안에는 알려주신 소스가 없는 것 같습니다

이윰IN님의 댓글

이윰IN 2017.09.14 09:34

찾기 힘드신가 보군요.
위 첫번째 댓글에 소스를 조금 더 넣어놨으니 다시 찾아보세요.
있을 거예요.

gang님의 댓글

gang 2017.09.14 09:46

총판매수량 잘 나옵니다 ^^ 감사합니다

gang님의 댓글

gang 2017.09.14 10:00

이걸 제품보기에 불러와서 보여주려면 어떻게 하면 되는지요?

이윰IN님의 댓글

이윰IN 2017.09.14 10:17

아.. 차라리 프로젝트 의뢰를 하시면 감사..
아.. 아닙니다.

아래와 같이 하시면 됩니다.
-- 아래 --
1. /eyoom/core/shop/item.php 파일 소스 추가
[수정전]

if ($ca['ca_include_head']) {
	@include_once($ca['ca_include_head']);
} else {
	// 이윰 테일 디자인 출력
	@include_once(EYOOM_SHOP_PATH.'/shop.head.php');
}

/**** item : Start ****/
// 상품기본정보 및 주문폼


[수정후]

if ($ca['ca_include_head']) {
	@include_once($ca['ca_include_head']);
} else {
	// 이윰 테일 디자인 출력
	@include_once(EYOOM_SHOP_PATH.'/shop.head.php');
}

// 총판매수
$sales = sql_fetch("select sum(ct_qty) as qty from {$g5['g5_shop_cart_table']} where find_in_set(ct_status, '입금,준비,배송,완료') > 0 and it_id = '{$it_id}' ");

/**** item : Start ****/
// 상품기본정보 및 주문폼


2. /eyoom/테마명/skin_bs/shop/item_form.skin.html 파일이나 item_info.skin.html 파일의 원하는 위치에 아래 소스를 복사하여 붙여넣기 해 주세요.
{? member.mb_level > 5} ({=number_format(_sales.qty)}){/}


위와 같이 처리 하시면 될 겁니다.
감사합니다.

gang님의 댓글

gang 2017.09.14 10:57

네 깨짐이 없이 나오는 것 같습니다
감사합니다

gang님의 댓글

gang 2017.09.14 11:05

아직 팔아본 적이 없어서 데이터는 일단 0으로 나오는데 몇개 실혐을 해보고 피드백하겠습니다

gang님의 댓글

gang 2018.05.14 12:16

// 총판매수
$sales = sql_fetch("select sum(ct_qty) as qty from {$g5['g5_shop_cart_table']} where find_in_set(ct_status, '입금,준비,배송,완료') > 0 and it_id = '{$it_id}' ");
--> 여기에서 입금, 준비, 배송, 완료 부분을 영어로 바꾸어 사용하고 있는데 이 부분도 영어로 바꾸어 주면 되나요?
일단 상품 판매수가 안나오고 (0) 으로 나옵니다

gang님의 댓글

gang 2018.05.14 10:44

감사합니다

질문과 답변 (채택기능) 게시판이 신설되었습니다.
질문과 답변 (구) 게시판은 글쓰기가 제한되오니 착오 없으시길 바랍니다. (댓글 및 조회는 여전히 가능합니다.)

전체 2,800 건 - 1 페이지
제목
이윰넷 2017.10.24 478 0
도깨비뿅망치 2017.10.24 618 0
홍인 2017.10.24 474 0
tenuunsalhi 2017.10.23 498 0
jumphu 2017.10.23 484 0
jumphu 2017.10.23 464 0
GNDOON 2017.10.23 474 0
jumphu 2017.10.23 448 0
gang 2017.10.23 409 0
백철하 2017.10.22 468 0
클라네스 2017.10.22 430 0
gang 2017.10.21 459 0
최태풍 2017.10.21 471 0
꿈꾸는개발자 2017.10.20 440 0
부끄럼소년 2017.10.20 509 0