웹마스터 팁

이글은 [묻고 답하기]에 질문 올라 온것을 [자유게시판]에 답을 달아 드렸는데 나름데로 필요한분이 있으실거 같아 글을 다시 정리하여 이곳에 올립니다.


위젯의 용도 : 분류(카테고리)로 분류 한 게시물에서 특정 카테고리의 글에서 이미지만 추출하여 보여주는 위젯입니다.


질문자의 의도

사이트를 운영하면서 홍보성 글을 접수 받는 게시판이 있습니다. 이 곳에 회원이 글을 작성하면 관리자가 심사하여 메인화면에 위젯을 이용하여 이미지가 나타나도록 하고자 합니다.


해결방법)

1. 접수 게시판을 만들고, 승인난것은 광고 게시판으로 글을 이동 하면 됩니다. -> 문제점. 확장변수가 있는경우 확장 변수가 이동 하지 않습니다.


2. 확장 변수를 별도로 하나 추가하여 변수값 [요청], [보류], [승인] 의 라디오 버튼으로 만들고, 이 확장 변수중 [승인] 인것만 추출하는 방법 -> 확장 변수의 특성상 코드가 복잡해집니다.


3. [승인] 여부를 카테고리로 처리 하는 방법.

카테고리를 [요청],[거부],[승인] 으로 구분하여 만듭니다. 회원은 카테고리를 [요청]으로 하여 글을 작성합니다.

-> 회원이 [거부].[승인]을 선택하지 못하도록해야 하는데 이것은 관리자 화면에서 카테고리 만들때 옵션으로 들어있으므로 쉽게 구성 가능합니다.

관리자는 글을 [수정]하여 카테고리를 [승인]으로 변경하는 것으로 [승인]을 결정 합니다.



여기서는 3번의 방법에 대하여 정리 합니다.

1) 일단 분류를 만듭니다. [요청], [보류], [승인]

2) 위젯의 생성.

이것을 위하여 이미 사용중인 [최근 이미지] 위젯을 사용하기로 합니다.

그런데 구조적으로 변경해야 하므로 기존에 사용하던 [최근 이미지]위젯이 변경 됩니다. 따라서 코드 수정으로 인하여 다른 페이지에서 사용하고 잇는 [최근 이미지]가 오 작동 일어나게 됩니다. 더구나 위젯을 업데이트 라도 하면 수정한 코드를 다시 수정해야하는 불편이 있습니다. 그래서 기존 [최근 이미지]위젯을 복사해서 사용하도록 합니다.


1. 위젯 폴더의 newest_images 폴더를 복사하여 newest_images_cat 라는 폴더명으로 만듭니다.

스킨은 [최근 이미지]에서 사용하는 스킨을 그대로 사용하면 됩니다. 스킨을 건드리는 것이 아니므로...


2. 새로 복사하여 만든 newest_images_cat 폴더에 보면

newest_images.class.php 파일이 있는데 이것을 newest_images_cat.class.php 로 이름을 바꿉니다.


3. 이 파일을 오픈 하여 79번줄을 아래와 같이 추가, 수정 합니다.

            $obj->category_srl = (int)$args->category_srl;
            $files_output = executeQueryArray("widgets.newest_images_cat.getOneFileInDocumentCat", $obj);

* category_srl 은 위젯 생성시 입력하는 카테고리 srl 의 숫자값입니다.

* widgets.newest_images_cat.getOneFileInDocumentCat 는 입력 받은 카테고리값을 가진 게시글만 추출하는 쿼리 입니다.


4. 9번줄     class newest_images extends WidgetHandler { 를 아래 처럼 바꿉니다.


    class newest_images_cat extends WidgetHandler {


5. newest_images_cat 폴더속에 queries 폴더를 만듭니다.

첨부한 getOneFileInDocumentCat.xml 파일을 이 폴더속에 업로드 합니다.

* 이파일은 주어진 $obj->category_srl (원하는 카테고리)값을 받아 그 카테고리에 해당하는 게시물 목록을 구하는 쿼리 입니다.


6. newest_images_cat 폴더속의 conf 폴더속의 info.xml 파일을 오픈하여

3번줄에     <title xml:lang="ko">최근 이미지 출력</title>  을     <title xml:lang="ko">카테고리 이미지 출력</title> 정도로 바꿉니다. 기타는 원하시는데로 수정합니다. 이 이름은 위젯 리스트에 나타나는 이름입니다.


7. 이 파일 안에 대략 288번줄  (대상모듈을 선택하는 부분 아래)에 아래 코드를 추가합니다.

         <var id="category_srl">
            <name xml:lang="ko">대상 카테고리 번호</name>
            <type>text</type>
            <description xml:lang="ko">선택하신 카테고리에 등록된 글을 대상으로 합니다.</description> 
        </var>



이제 위젯 코드를 생성하시면 됩니다. 물론 추출을 원하는 카테고리(여기서는 [승인])의 srl 값을 알고 있어야겠죠.

그러면 게시판에서 카테고리가 [승인]이라고 결정한것만 위젯이 추출하여 출력하게 됩니다.

기존의 위젯을 활용하엿고, 별도로 만들었기때문에 위젯을 업그레이드 하더라도 이 위젯은 별도로 작동하므로 차후 아무런 문제가 없으실겁니다. 참고로 원하는 카테고리의 category_srl 값을 알아내는 방법은 주소바를 보시면 나타나므로 쉽게 찾으실수 있습니다.


첨부파일은 이 위젯의 전체 파일 입니다.


이 게시판을 위하여 사용하기 딱 좋은 게시판은 탭형 게시판, 게시판 EX  입니다. 상단에 카테고리별로 구분해 주므로 관리하시기 편하실겁니다. 카테고리 만들고 지우는건 게시글에 영향이 없고, 위젯도 별도로 제작하였기때문에 기존 홈페이지에 영향이 없으므로 한번 사용해 보세요.


위젯의 스킨코드는  건들지 않았으므로 최근 이미지 위젯 스킨은 무엇이든지 skin 폴더에 추가만 하면 다 사용할수 있습니다.


이상 앙띠 이었습니다.

약간만 은용하시면 좋은 위젯이 뒬수도 있겠네요.

* 꼭 쓰고나면 오타가 보이네요. 쓸때는 보이지도 않더만...

제목 글쓴이 날짜
특정 확장변수를 글 추천자에게만 보이게 하기 [10] 뮤랑이 2010.01.11
마이피플봇을 이용한 마이피플 알리미 (푸시서비스) 이용하기 [4] garnecia 2014.06.01
관리자가 글 쓸때는 분류를 선택 안 해도 등록되도록 (공지글을 쓸때를 위해) 개선 [2] sejin7940 2014.06.21
게시판 글쓰기 폼은 없이 확장변수만 표시할 수 있는 게시판 만들기 (for sketchbook5 최신버전 기준) [2] 큰성565 2014.05.02
*LI-NA님의 큰 선물* SKETCHBOOK5 (최신버전)에서 특정 확장변수를 추천하는 사람에게만 공개하도록 하는 방법 [4] file 큰성565 2014.04.30
게시판에 대해 닉네임,이름 등의 정렬을 추가하는 방법 [1] sejin7940 2014.03.09
코어 수정 없이 스킨 수정만으로 게시판 목록에 유튜브,비메오 썸네일 출력 [2] foret 2014.02.23
XE 1.7.4 새로운 우편번호 체계에서 나머지주소 관련 사용실수 방지방법입니다 [1] sejin7940 2014.02.07
XE 1,7 에서 확장변수 기준으로 정렬 기능이 작동 안 하는 버그 수정법 [1] sejin7940 2013.12.04
확장변수, 회원가입 등의 한국 우편번호 검색 서버 주소 변경... [2] Double'U' 2013.12.26
[공유]로그인 하지 않아도 게시판에서 회원정보 출력 하기 (가입품 확장변수 포함) [6] file rminkim 2012.03.20
요즘 만들고 있는 사이트에 적용한 것(모바일 확장변수) [4] 유니눅스 2012.07.30
페이지로딩시 메모리 부족이란 오류메시지가 뜰때... 똑디 2013.11.07
특정 확장변수값이 포함된 글의 총 개수를 출력하는 함수 [3] sejin7940 2012.08.07
기본게시판에서 익명 선택하여 "게시글, 댓글" 작성이 가능하도록 세팅하기(sketchbook5 기준) [15] Ashon 2013.01.08
게시판 댓글 스킨에서 추가적인 변수 전달 안 되는 현상 보완 위해서. [1] sejin7940 2013.08.11
특정 카테고리의 최근 이미지 출력 위젯 [3] file 앙띠2 2010.04.28
-추가- 당신의 XE 기반 홈페이지를 훅가게 하는 방법 4가지 [26] 老姜君 2009.10.08
확장변수 폼 디자인 하기 [14] file Diver 2009.06.21
상담용 게시판 - 확장 변수 이용 [4] file 어라얼랑 2012.06.23