최근 댓글이 등록된 게시물 순서대로 리스트 재정렬
가장 최근에 댓글이 달린 게시물 순서대로 게시판 목록을 정렬하는 방법입니다.
댓글이 작성되면 원글 여분필드에 현재 시간을 기록하고
게시판 설정에서 리스트 정렬 필드 옵션에 여분필드 정렬을 추가하는 방식으로 했습니다.
예제에 사용된 여분필드는 wr_1 번을 사용했습니다.
1. adm/board_form.php 파일 수정
리스트 정렬 필드 설정 부분이 있는데 아래 내용을 추가합니다.
<option value="wr_1 asc" <?php echo get_selected($board['bo_sort_field'], "wr_1 asc"); ?>>wr_1 asc : wr_1 오름차순</option>
<option value="wr_1 desc" <?php echo get_selected($board['bo_sort_field'], "wr_1 desc"); ?>>wr_1 desc : wr_1 내림차순</option>
최근 등록 날짜 기준이면 desc 만 추가해도 되겠네요
수정 후 게시판 설정에서 리스트 정렬 필드를 추가한 정렬 방법으로 선택
2. 스킨 파일 수정
2-1.
게시판 스킨 폴더에 write_comment_update.skin.php 파일을 새로 생성합니다.
기본 스킨에는 이 파일이 아마 없을 겁니다 파일 생성 후 내용은 이렇게 추가.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
sql_query(" update $write_table set wr_1 = '".G5_TIME_YMDHIS."' where wr_id = '{$write['wr_id']}' ");
?>
2-2.
게시판 스킨 폴더에 write_update.skin.php 파일을 새로 생성합니다.
기본 스킨에는 이 파일이 아마 없을 겁니다 파일 생성 후 내용은 이렇게 추가.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
sql_query(" update $write_table set wr_1 = '".G5_TIME_YMDHIS."' where wr_id = '$wr_id' ");
?>
wr_1 필드를 이미 사용하고 있다면 겹치지 않게 다른 필드를 사용하세요.
여기까지 하고 나서 각 게시물에 코멘트를 남기면 원글 여분필드 wr_1 에 현재 시간이 업데이트됩니다.
게시판 설정에서 wr_1 필드 기준으로 정렬되게 해놨으니 새 코멘트가 등록된 게시물부터 정렬됩니다.