채택완료

게시판 여분필드로 리스트 정렬을 할수 있을까요?

2020-08-25 (화) 10:59:03 4,724

안녕하세요 그누보드 왕초보입니다.. 모르는게 하나 더있어서 질문드려요.

리눅스 서버, nginx 에서 그누보드 5.4.2.8 최신버전과, 빌더,테마를 쓰지않고 제공하고 있는 basic 테마로 작업중입니다.

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

작은별님의 게시물을 보고 여분필드 (wr_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>

을 추가하라고 되어있어서,

Copy
<td>

<?php echo help('리스트에서 기본으로 정렬에 사용할 필드를 선택합니다. "기본"으로 사용하지 않으시는 경우 속도가 느려질 수 있습니다.') ?>

<select id="bo_sort_field" name="bo_sort_field">

<?php foreach( get_board_sort_fields($board) as $v ){

$option_value = $order_by_str = $v[0];

if( $v[0] === 'wr_num, wr_reply' ){

$selected = (! $board['bo_sort_field']) ? 'selected="selected"' : '';

$option_value = '';

} else {

$selected = ($board['bo_sort_field'] === $v[0]) ? 'selected="selected"' : '';

}

if( $order_by_str !== 'wr_num, wr_reply' ){

$tmp = explode(',', $v[0]);

$order_by_str = $tmp[0];

}

 

echo '<option value="'.$option_value.'" '.$selected.' >'.$order_by_str.' : '.$v[1].'</option>';

} //end foreach ?>

</select>

</td>

이부분을 확인해보았고, 정렬필드 넣는것 까지는 하였습니다.

list.php에 수정을 두개 하라고 되어있는데, 갤러리 리스트이라서 그런지 

$sst = preg_match("/^(wr_datetime|wr_hit|wr_good|wr_nogood|wr_1)$/i", $sst) ? $sst : ""; <-- 이부분과

if ($sst) {

    if ($sst == 'wr_1') {

        $sql_order = " order by wr_1+0 {$sod} ";

    } else {

        $sql_order = " order by {$sst} {$sod} ";

    }

}

sql order 넣는부분이 없는데 어떻게 하면 좋을까요..ㅜㅜ 조언좀 부탁드립니다.

답변 1개 / 댓글 1개

채택된 답변
+20 포인트

원본 기준으로 bbs/list.php 파일에 해당 부분이 없을리가 없습니다.

1930897719_1598322201.5856.png

답변에 대한 댓글 1개

헉..제가 잘못봤네요 ㅜㅜ board/skin에 있는 list로 착각했네요 bbs에 있는거 확인했습니다
무지해서 죄송합니다 ㅜㅜ

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