채택완료

리스트 정렬 필드를 여분필드값 기준으로 정렬하는 방법

2021-12-19 (일) 11:44:26 3,281

안녕하세요.

그누스터디님의 팁을 이용해서 스킨에 적용하고 있는데 잘 안되네요.

https://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=74

질문을 여기서만 받는다고 해서 이곳에 남깁니다.

[현재상황]

설치버전: Version 5.4.19

설치주소: https://klick.co.kr/bbs/board.php?bo_table=wedding

여부필드사용: wr_8 (행사 시작일) / wr_9(행사 종료일)

아래와 같이 입력되고 있습니다.

833227679_1639881397.8567.jpg

[수정한 사항]

아래 설명대로 했습니다.

수정 파일 : lib/get_data.lib.php
function get_board_sort_fields($board=array(), $make_key_return=''){
위 함수를 찾은 후 아래 코드 추가
array('wr_1+0 asc', 'wr_8 오름차순'),
array('wr_1+0 desc', 'wr_8 내림차순'),

[하고 싶은 내용]

wr_8(행사 시작일) 기준으로 값이 작은 것(최근 행사)이 먼저 보이게 하고 싶습니다.

[변수...]

현재 오늘 기준으로 행사가 종료된 것은 "종료" 카데고리로 자정을 기준으로 이동하게 수정했습니다.

종료된 행사는 예외처리 하고 싶습니다.

- 종료 카테고리를 예외 처리 하던지

- today 이전 보다 큰 값 중에서만 적용 하던지

이렇게 하지 않으면 종료된 행사가 가장 먼저 나올것 같습니다.

즐거운 주말... 혹시 시간 되시는 분들은 조언 부탁드립니다.

감사합니다.

|

답변 2개 / 댓글 5개

채택된 답변
+20 포인트
2021-12-19 (일) 19:43:07
Copy
array('wr_8+0 asc', 'wr_8 오름차순'),
array('wr_8+0 desc', 'wr_8 내림차순'),

맞는지는 모르겠지만 이렇게는 되련지..?!

답변에 대한 댓글 3개

의견 감사합니다. 그런데 안되네요.
저 배열을 아래에다가 추가 했나요? 그러고 게시판설정에서 확인 누르셨구요?
감사합니다.
코드 추가 후 게시판 관리자에서 다시 선택 후 확인을 해야 하는데..
설정값 그대로 있다라고 생각하고 코드만 추가 후 안된다고 했었네요.
지금 해보니 잘 됩니다.
다시한번 감사 드립니다.
2021-12-19 (일) 20:34:09

그리고 bbs/list.php 에보시면 182번째줄에 공간 보이잖아요

거기서 echo $sql; 로 확인해보세요 

order by 부분에서 여분필드가 있는지.. 확인해서 댓글에다가 쿼리를 복붙해서 보여주세요

답변에 대한 댓글 2개

select * from g5_write_wedding where wr_is_comment = 0 order by wr_8+0 asc limit 0, 15

이렇게 나오네요. 성공했으니 잘 나오고 있는거 맞겠죠?
네~ 잘 나오네요 ㅋㅋㅋ 에코 출력한건 지우셔도 되요
그누보드가 쿼리를 볼수없어서요 프레임워크 쓰시면 디버깅바로 볼수있거든요
암튼 잘 나오는거 맞아요

답변을 작성하려면 로그인이 필요합니다.