위젯에 대해서
APMS의 위젯의 경우 thema_widget 이라는 함수로 호출 하는데, 함수 자체는 그냥 형식만 갖춘 빈껍데기 함수입니다.ㅠㅠ
1. 위젯 사용방법
위젯은 위 형태로 출력하면 되는데, 각 인자의 설명은 다음과 같습니다.
1) 위젯폴더명 : 테마 내 /widget 폴더에서 위젯php 파일이 위치한 폴더를 말합니다. 따라서 그냥 widget 폴더 안에 있는 위젯용 php 파일을 사용한다면 빈값("")으로 입력해 주고, 그게 아니고, /widget/item 폴더 안에 있는 php 파일을 사용한다면 "item" 이라고 입력해 주면 됩니다.
2) 위젯용 php 파일 : 사용할 php 파일로 확장자까지 다 적어 주셔야 합니다. ex) widget.item.category.php
3) 위젯옵션 : 이건 위젯파일마다 다 다르기 때문에 사용할 위젯용 php 파일에서 확인하셔야 합니다.
2. 위젯옵션에 대해서
위젯마다 사용하는 방법에 대해서는 해당 위젯용 php 파일을 열어 보시면 최상단에 옵션설정하는 방법에 대해서 간단히 기입해 두었습니다.
예를들어 /widget/item/widget.item.category.php 위젯을 사용하고자 할 경우, 출력하고자 하는 곳에 이라고 적어 주면 되는데, 이 때 옵션은 widget.item.category.php 파일을 열어서 제일 상단에 보시면 아래처럼 적혀 있습니다. (Basic에 있는 기본 위젯 중 제일 복잡해서 이걸 기준으로 설명 드립니다.)
/* 타입 또는 분류별로 아이템 추출 */
// 옵션 : 효과(,시간)|타입번호|분류코드|슬라이더 갯수|아이템 갯수|새글시간|새글 라벨색상|썸네일 가로크기|썸네일 세로크기|정렬|랭크|기간
// 효과 : none, show, slide, fade, vertical 의 총 5가지 가능
이 위젯은 상품을 추출해서 보여주는 위젯으로 아래와 같은 기능이 있다는 것을 알 수 있습니다.
1) 효과 : slide, fade, vertical, show 의 기본 4가지 효과를 캐러셀에 줄 수 있으며, none 으로 설정시 일반 갤러리 추출처럼 출력됩니다. 그리고 효과 다음에 시간을 넣어 주시면 효과시간 지정을 개별적으로 지정해 줄 수 있고요. ex) slide,5000
2) 타입번호 : 영카트5는 할인, 신상 등 5가지 타입번호를 가지고 있는데, 지정해 주면 해당 상품을 가져온다는 것입니다.
3) 분류코드 : 분류코드를 등록해 주면 해당 분류 내의 상품만 가져온다는 것입니다.
4) 슬라이더 갯수 : 캐러셀일 경우에는 슬라이더 수가, 효과가 none 일 때는 줄 수가 됩니다.
5) 아이템 갯수 : 가로 이미지수 입니다.
6) 새글시간 : 아이템 등록 후 새글체크를 하는 시간으로 타입에서 말하는 신상과 달리 자료가 등록된 시간으로 체크합니다.
7) 새글라벨 : 새글일 때 라벨로 출력되는 그 색상을 말하며, red, blue, green, pink 의 4가지 색상이 가능합니다.
8) 썸네일 크기 : 말 그대로 썸네일 이미지 크기입니다.
9) 정렬 : 추출하는 자료를 정렬하는 방식을 말합니다. 간단히 랭킹이라고 보셔도 됩니다. 입력은 쿼리문의 order by 이후 입력하는 내용을 그대로 넣어 주시면 됩니다. 즉, "필드면 정렬방식" 식으로 말이죠.
예를들어 조회순으로 나오도록 하고 싶으면 it_hit desc 라고 입력해 주면 되고, 댓글순으로 보이고 싶으면 pt_comment desc 가 됩니다. 평균별점 순이면 it_use_avg desc, 추천순이면 pt_good desc, 판매량순이면 it_sum_qty desc 등이 됩니다. 따라서 이걸 제대로 사용하고 싶으면 상품정보 테이블의 필드명을 먼저 아셔야 합니다.
10) 랭크 : 정렬 사용시 랭크(순위)표시를 할지 설정합니다.
11) 기간 : 자료의 출력(발행)시점을 기준으로 해당 되는 자료만 가지고 정렬할 수 있습니다.
ASR의 최근글 함수에서 지원하는 것을 최대한 위젯에 반영하다 보니 생각외로 복잡해 졌습니다.ㅠㅠ
그럼 몇가지 옵션사항에 대해서 예를 들어 드리면 다음과 같습니다.
fade||1010|3|3|24|blue|400|400
1010 분류의 상품(24시간 이내 등록된 상품은 새글표시)을 400x400 썸네일로 한 줄이 3개씩인 총 슬라이더 3개(전체 9개 추출)를 fade 효과로 보여 주어라.
slide,6000|||5|3|24|red|400|400|it_sum_qty desc|1|60
60일 이내 등록된 상품 중 판매량이 많은 순(it_sum_qty desc)으로 랭킹표시를 해서 보여주는데, 각 상품은 400x400 썸네일로, slide 효과를 주고, 총 5개 슬라이더, 한 슬라이더당 이미지 3개(총 15개, 15위까지)씩 보여 주어라
등 위젯하나로 다양하게 표현할 수도 있습니다.