목선웅

공지글 등록순서가 아닌, 등록일 순으로 변경하기

· 2021-08-14 (토) 10:59:36 · 7073 · 3

게시물 출력순서는 게시판 설정에서 bo_sort_field 값을 조정하면됩니다만,

공지사항에는 적용되지 않습니다. 공지사항은 등록된 순서를 기준으로 항상 출력되는 것 같더라구요.
저 처럼 공지사항을 최신글(wr_datetime) 순서로 보고 싶으신 분은 아래 방법을 사용하셔도 됩니다.

1. 소스코드 찾기
 - bbs/list.php

[code]

// 공지 처리

if (!$is_search_bbs) {

    $arr_notice = explode(',', trim($board['bo_notice']));

    $from_notice_idx = ($page - 1) * $page_rows;

    if($from_notice_idx < 0)

        $from_notice_idx = 0;

    $board_notice_count = count($arr_notice);

 

    for ($k=0; $k<$board_notice_count; $k++) {

        if (trim($arr_notice[$k]) == '') continue;

 

        $row = sql_fetch(" select * from {$write_table} where wr_id = '{$arr_notice[$k]}' ");

 

        if (!$row['wr_id']) continue;

 

        $notice_array[] = $row['wr_id'];

 

        if($k < $from_notice_idx) continue;

 

        $list[$i] = get_list($row, $board, $board_skin_url, G5_IS_MOBILE ? $board['bo_mobile_subject_len'] : $board['bo_subject_len']);

        $list[$i]['is_notice'] = true;

 

        $i++;

        $notice_count++;

 

        if($notice_count >= $list_page_rows)

            break;

    }

}

[/code]

2. 위의 내용 바로 아래에 적기


[code]

// 공지사항 날짜순으로 재정렬

usort($list, function($b, $a) {

    return $a['wr_datetime'] - $b['wr_datetime'];

});

[/code]

이 코드를 넣어주시면 됩니다. 그러면 공지 순서가 최신글이 위쪽에 보이도록 나옵니다.

게시물을 담는 $list 배열에 일반글 보다 공지사항 글부터 먼저 정리가 되는데, 이 타이밍에 wr_datetime 배열값을 기준으로 재정렬해 놓는 방법입니다.

common.php 에서 $board['bo_notice'] 변수를 get_board_db 함수로 정리할 때, 하려고보니까 mysql 쿼리문을 계속 날려야겠어서 그냥 $list 정리 할 때 배열변수를 재정렬 하는 방법으로 처리했는데.. 더 좋은 방법 아시는 분 알려주세요! ^_^

|

댓글 3개

감사합니다~~
2021-08-16 (월) 15:15:29
유용한 정보 감사합니다.
좋은 정보 감사합니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
21-08-24 조회 7,682
21-08-24 조회 6,928
21-08-23 조회 7,592
21-08-23 조회 5,988
21-08-23 조회 5,763
21-08-21 조회 6,226
21-08-18 조회 6,717
21-08-17 조회 7,166
21-08-17 조회 6,260
21-08-14 조회 7,074
21-08-14 조회 9,658
21-08-11 조회 6,623
21-08-10 조회 8,012
21-08-07 조회 5,681
21-08-05 조회 7,633
21-08-05 조회 7,361
21-08-04 조회 6,212
21-08-04 조회 6,884
21-08-04 조회 6,151
21-08-04 조회 6,024
21-08-02 조회 7,187
21-08-02 조회 6,223
21-08-01 조회 5,735
21-07-31 조회 6,035
21-07-30 조회 5,646
21-07-29 조회 8,153
21-07-28 조회 7,375
21-07-26 조회 7,605
21-07-25 조회 9,647
21-07-24 조회 7,801