태그 위젯, 최신 등록 순으로 출력하기
CMS/프레임워크 | Rhymix 1.9 |
---|---|
개발 언어 | PHP 7.4 |
태그리스트위젯 깃헙
https://github.com/eondcom/rxe-widget-tag_list
등록한코드
<img class="zbxe_widget_output" widget="tag_list" skin="default_dev" colorset="layout" title="요즘 태그" period="180" list_count="15" widget_cache="0" />
위젯 등록 설정
등록된 기간 180일에서 리스트카운트 15로 설정했습니다.
질문.
그런데.. 최근 15가 아닌거 같아요.
리스트카운트 15가 설정되어있을 때, 여기서 15어떻게 하면 '가장 최근' 15개가 뜨도록 할 수 있을까요?

eond
Lv. 13
# 라이믹스 스킨 제작은 어디? >>>> XE 레이아웃, 라이믹스 스킨제작은 이온디에서 커스터마이징해드립니다.
# 빠른 라이믹스 커뮤니티용 호스팅을 찾고 계신가요? >>>> 이온디호스팅 서비스는 PHP8 & Redis 서버 캐시를 활용하여 라이믹스에 최적화된 호스팅 서비스를 제공해드립니다. (서버세팅시 웹패널, 내도메인메일서비스도 함께 구축해드립니다.)
https://eond.com
# 빠른 라이믹스 커뮤니티용 호스팅을 찾고 계신가요? >>>> 이온디호스팅 서비스는 PHP8 & Redis 서버 캐시를 활용하여 라이믹스에 최적화된 호스팅 서비스를 제공해드립니다. (서버세팅시 웹패널, 내도메인메일서비스도 함께 구축해드립니다.)
https://eond.com
댓글 6
regdate 같은 정렬대상과 DESC 같은 정렬방법을 추가하면 될 것 같습니다.
xml이 아니라..
tag_list.class.php 에서 해야겠죠?
컨텐츠 위젯을 참조해보니깐..
$args->order_target='regedit';을 추가해넣고..
function에서..$obj->sort_index=$order_target;....
$args->order_target='regedit';
이것만 추가해놓고...
그 다음에 모르겠더군요..(__);;
아, 이게 180일 이전에 입력된 태그들 중에서 빈도수가 높은 것 순으로 뽑아오는 구조네요.
즉, regdate로 정렬되는 게 아닙니다ㅜ
게다가 날짜 계산식도 엄청 하드코딩이네요ㄷㄷ
date("YmdHis", strtotime("-180 day")) 같은 걸로 하면 간단하게 180일 이전 날짜를 구해오는 걸로 알고 있는데 말이죠ㅠㅠ
쿼리 xml 파일도 이걸로는 안 될 것 같습니다.
index가 기본 count로 잡혀 있고, 가져오는 컬럼은 tag랑 count 뿐이어서요.
현재 쿼리로는 regdate로 정렬이 불가능해요.
1. xml 파일 columns 쪽에 <column name="regdate" /> 같은 것을 추가해줘야 할 것 같구요.
2. xml 파일 navigation 쪽에서는 <index var="order_target" default="count" order="desc" /> 정도로 바꿔주고,
3. php 파일에서 $args 넣어줄 때, $args->order_target = 'regdate' 같은 걸로 해야 할 것 같아요.
직접 해본 것은 아니어서 몇몇 부분에서 오류가 있을 순 있지만, 어쨌든 대강 이런 프로세스로 가야 최근에 생성된 태그를 순서로 해서 리스트가 가능할 것 같습니다.
감사합니다. ㅠㅠ
이제 곧 이온디 태그 위젯 나오는 겁니까?
아, 깃허브에 공유되어 있군요!
공유는 사랑입니다~