묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
카테고리 추출
2007.09.02 10:34
A게시판에 분류(카테고리)가 가,나,다 라고 한다면
현재는 최근게시물 등에서 A게시판만을 가지고 사용하는데요.
분류 설정해둔 가, 나, 다 중 원하는 것만 빼서 사용하고 싶은데 방법이 없을까요?
그것과 더불어 가나다순 정렬...이거 정말 절실히 필요합니다.
가나다순 정렬과 카테고리 추출...정말 절실히 필요합니다.
어떤 함수라든지 어떤 코드...힌트라도 주시면 직접 만들어 사용할 각오가 되어 있습니다;;
좀 도와주세요 ㅠ
현재는 최근게시물 등에서 A게시판만을 가지고 사용하는데요.
분류 설정해둔 가, 나, 다 중 원하는 것만 빼서 사용하고 싶은데 방법이 없을까요?
그것과 더불어 가나다순 정렬...이거 정말 절실히 필요합니다.
가나다순 정렬과 카테고리 추출...정말 절실히 필요합니다.
어떤 함수라든지 어떤 코드...힌트라도 주시면 직접 만들어 사용할 각오가 되어 있습니다;;
좀 도와주세요 ㅠ
댓글 19
-
Simulz
2007.09.02 11:38
-
Simulz
2007.09.02 12:02
특정 분류에 속한 게시물을 제외하려면 쿼리 부분을 편집해야 합니다.
queries/getNewestDocuments.xml 파일에서 아래 줄을 알맞은 곳에 삽입합니다.
<condition operation="excess" column="category_srl" var="s_category_srl" pipe="and" />
위 쿼리 XML 설명
<condition> 순서대로 DB 쿼리를 하면서
pipe="and" 그리고 (pipi="or" 또는)
var 에서 설정한 값을
column에서 지정한 컬럼에서
operation="excess" 제외해라
다른 옵션
operation="equal" var 값을
operation="more" var 값보다 높은 값을
operation="less" var 값보다 낮은 값을
newest_document.class.php 파일에서는 아래 줄을 $output = executeQuery 이전 줄에 추가시켜 줍니다.
$obj->s_category_srl = $args->s_category_srl;
category_srl 값을 위젯 설정 창에서 지정해 주려면
conf/info.xml 파일에서 알맞은 위치에 아래 소스를 삽입합니다.
<var id="s_category_srl">
<name xml:lang="ko">분류 제외</name>
<type>text</type>
<description xml:lang="ko">제외 하고 싶은 분류 srl 번호를 입력하세요.</description>
</var>
분류 지정이 수동적이지만 크게 불편한 점은 없을 겁니다. -
똑디
2007.09.03 02:00
이거 응용하면 이번 0.1.2버전에서 추가된 위젯에서 아무것도 선택하지 않으면 전체를 대상으로 뽑아내 오는 기능에 추가적으로 괜찮은 기능이 될것 같은데요.
제로님께 건의는 드렸는데...어떻게 될진..
정리를 하자면 이렇습니다.
전체게시물을 뽑아내 오고 싶은데 특정 게시판만 제외를 하고 뽑아내 오고 싶은거죠.
게시판이 100개라면 지금까지 100번체크를 해서 최근게시물을 뽑아내 왔습니다.
그런데 이번에 업데이트 된 기능중에 모듈을 선택하지 않으면 전체를 대상으로 뽑아져 내니 한방에 해결이 된거죠.
그런데 만약 100개의 게시판중 98개를 대상으로 최근게시물을 뽑아내 오려면...
역시 98번의 체크를 해야 하는 상황이 발생하죠.
차라리 이런경우엔 제외대상 모듈을 적어주는게 편할것 같은데...
혹시 시간되시면 최근위젯에서 제외대상 모듈을 선택해서 최근글을 뽑아내 오는 팁을 알려주실순 없으신지요? -
다케루
2007.09.02 12:12
아자차카타파하가 안된다는게 무슨 뜻이에요? ;;
일단 실험은 해보겠지만...제발 잘 되면 좋겠네요...
www.gamemoum.com 와서 보시면 온라인게임 이라는 메뉴가 외부페이지거든요...그걸 zbxe 안으로 집어넣으려는 거에요... -
Simulz
2007.09.02 12:26
혹시...........
일단 최근 게시물을 뽑아낸뒤
5개 목록에서는 가나다 정렬을 해주려는 건가요?? 어쩐지 ㅋ
분류 또한 지정된 분류만 출력하려면 쿼리 옵션에서
excess가 아닌 equal로 바꾸면 됩니다. -
다케루
2007.09.02 12:44
감사합니다. 실마리가 살살 보이네요. 프로그래머이신가요? ㅋ~ -
Simulz
2007.09.02 12:55
프로그래밍을 좋아해요~ 알고리즘 짜거나....주로 분석, 통계 작업...
-
다케루
2007.09.02 12:57
앗 덧글 하나가 없어졌네요; -
다케루
2007.09.02 12:57
가나다순 설명해주신게 없어진듯;; 부탁드립니다ㅠ -
Simulz
2007.09.02 13:54
처음에 올린 설명은 가나다 순으로 쿼리를 해서 삭제하였습니다.
쿼리 후에 출력물을 가나다 순으로 정렬하려면
.class.php 소스 중에 아래 줄을
$document_list[$key] = $oDocument;
다음 줄로 고친 후,
$document_list[$attribute->title] = $oDocument;
아래 줄 이전에
$widget_info->document_list = $document_list;
다음 줄을 삽입하세요.
ksort ($document_list);
reset ($document_list);
ksort는 키를 기준으로 정렬을 하는 함수이고
reset은 배열 포인터를 처음으로 옮기는 함수입니다.
※ 이때 주의할 점은 이렇게만 바꿔 버리면 같은 위젯들의 최근글이 가나다로 정렬 되므로
info.xml 에 옵션을 넣어주어 특정 위젯에서만 정렬이 되도록 설정해 주면 됩니다. -
다케루
2007.09.02 13:14
Fatal error: Call to a member function on a non-object in /home/hosting_users/gamemoum/www/classes/widget/WidgetHandler.class.php on line 49
;;; -
Simulz
2007.09.02 13:56
혹시 최근글목록 위젯을 어떤걸 사용하세요?
-
다케루
2007.09.02 14:01
newest_document 를 폴더명만 game_list로 바꿔서 속 내용 한글 텍스트만 살짝 바꿔서 쓰려고 했더니 그런 오류문구가 출력됐어요 -
Simulz
2007.09.02 14:07
폴더명
폴더명.class.php
폴더명.class.php 에서 정의된 클래스 명 class 폴더명
3가지 모두 일치해야 합니다. -
다케루
2007.09.02 14:15
아... -
다케루
2007.09.02 14:43
오류코드는 말씀하신대로 수정했더니 나오지 않네요~ 감사합니다. -
다케루
2007.09.02 14:42
http://www.gamemoum.com/?mid=game_status 현재 이것저것 해보며 하는데 도저히 안되는걸요...
타겟이 된 모듈은 board 이고 'gamelist' 게임전시관 입니다.
분류는 롤플레잉, 액션, 슈팅 등이 있는데
분류 srl 기재하는 곳에 액션이라고 했는데 안되서, 해당 게시판 가서 분류 선택후 [go]버튼 눌렀을 때 주소창에 나오는 카테고리 옆 번호를 기재해봤지만 그것도 역시 안되네요... 아... -
Simulz
2007.09.02 16:28
아무래도 다케루님 전용 위젯이 필요 할 것 같습니다.
여러 위젯을 후벼 파보면 원하는 위젯을 만들 수 있을 것입니다.
저는 테스트 할 수 있는 환경이 안좋아서요...(사이트가 초허접 ㅠㅠ) -
다케루
2007.09.02 23:43
결론은... 스스로 위젯을 제작하라...라는 거군요.... 많이 어려운데;; ㅠ 해보긴 해보겠지만 아흑...
이 기능을 사용하면 아자차카타파하 같은 게시물은 안보일 것 같은데...
빼고 싶은 카테고리가 있을 경우 제외하는 것은 가능은 합니다만, SELECT폼이 아닌 직접 srl을 입력해서 뺄 수는 있어요...