안녕하세요. Kboard를 정말 유용하게 잘 사용하고 있어서 감사하게 생각합니다.
다름이 아니라, 제가 대학원 논문을 올리는 게시판을 만들고 있는 중인데요.
논문에는 '논문번호'라는 것이 있어서 논문번호 필드를 따로 추가했어요.
이것까지는 성공했는데요.
문제는, 목록을 논문번호가 높은 순으로 정렬해야 하는데
Kboard는 기본적으로 시간순으로 게시번호가 매겨져서 목록이 생성되잖아요?
만약에 시간순으로 목록을 정렬하지 않고 업로드 시간에 관계없이
논문번호(새로 추가한 필드)의 높음 > 낮음 순으로 목록을 정렬하려면
어떻게 해야 하는지 알려주실 수 있을까요?
가령, 어떤 php를 어떻게 수정하면 되는 식으로요.
제가 전문가는 아니라서요. ㅜㅜ
제발 부탁드립니다!
http://www.cosmosfarm.com/products/kboard/hooks 이쪽 보시면 기능을 확장하거나 수정할 수 있는 훅 기능에 대한 설명이 있습니다.
kboard_list_orderby 이 필터를 사용해서 기능을 변경하실 수 있습니다. 이렇게 하시면 KBoard 코어 파일을 수정하지 않기때문에 차후 업데이트에서도 자유롭습니다.
훅에 관련된 내용은 구글등 검색하시면 많이 나오구요.
하지만 option 필드로 논문번호를 추가해주셨다면 보다 더 많은 수정이 필요합니다!
KBoard에서 수정하시려면 /kboard/class/KBContentList.class.php 파일에 getList 메소드가 있습니다.
해당 부분의 코드를 전체적으로 수정해주셔야 할 듯합니다.
아래의 쿼리문 자체를 수정하셔야 합니다. (테이블 조인이 필요합니다..)
$this->total = $wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}kboard_board_content` WHERE $where");
$this->resource = $wpdb->get_results("SELECT * FROM `{$wpdb->prefix}kboard_board_content` WHERE $where ORDER BY $orderby LIMIT ".($this->page-1)*$this->rpp.",$this->rpp");
쿼리문을 아시는 분에게 도움을 요청 하시는게 좋겠습니다..