그누보드 초기화면의 게시판들 배열순서
본문
안녕하세요
그누보드 초기화면의 게시판들 배열순서를 원하는데로 할수 있는지 질문해봅니다.
게시판의 글들 순서가 아니라 게시판들이 초기화면에 배치되는 순서를 말합니다.
관리자모드:상단메뉴중 게시판관리>게시판관리 (adm/board_list.php)에서 출력순서에서 숫자를 입력해서 순서바꾸려고 해봐도
그것은 상관없는건지 배치순서가 원하는데로 안나옵니다.
어디서 그런 설정을 할수 있는건지 알려주세요 ^^
답변 3
테마를 사용할떄
theme/basic/index.php 열어보면
<!-- 최신글 시작 { -->
<?php
// 최신글
$sql = " select bo_table
from `{$g5['board_table']}` a left join `{$g5['group_table']}` b on (a.gr_id=b.gr_id)
where a.bo_device <> 'mobile' ";
if(!$is_admin)
$sql .= " and a.bo_use_cert = '' ";
$sql .= " order by b.gr_order, a.bo_order ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
if ($i%2==1) $lt_style = "margin-left:20px";
else $lt_style = "";
?>
<div style="float:left;<?php echo $lt_style ?>">
<?php
// 이 함수가 바로 최신글을 추출하는 역할을 합니다.
// 사용방법 : latest(스킨, 게시판아이디, 출력라인, 글자수);
// 테마의 스킨을 사용하려면 theme/basic 과 같이 지정
echo latest('theme/basic', $row['bo_table'], 5, 25);
?>
</div>
<?php
}
?>
<!-- } 최신글 끝 -->
이부분을 조정하시면 됩니다.
간단하게 원하는 게시판만 할려면
게시판이 free 일때
<div style="float:left;">
<?php echo latest('theme/basic', notice, 5, 25);?>
</div>
<div style="float:left; margin-left:20px">
<?php echo latest('theme/basic', free, 5, 25);?>
</div>
이런식으로 해도 됩니다.
index.php 에서 소스를
$sql .= " order by b.gr_order, a.bo_order ";
=> 위 부분을 아래와 같이 변경하시면 게시판 출력순서대로 정렬될거 같습니다.
$sql .= " order by a.bo_order ";
이렇게 변경하시면 관리자모드 설정만으로 정렬이 가능합니다.
메인 게시판 정렬 소스를 보니
1. 그룹 출력순서 : 낮은 번호 위로
2. 게시판 출력순서 : 낮은 번호 위로
이렇게 정렬되는거 같습니다.
그룹 출력순서가 가장 낮은 그룹의 게시판들의 출력순서 낮은 순서대로 처리한후
그 다음 그룹 출력순서의 게시판중 낮은 순서대로 처리되는거 같습니다.
$sql .= " order by b.gr_order, a.bo_order ";
=> 위 부분을 아래와 같이 변경하시면 게시판 출력순서대로 정렬될거 같습니다.
$sql .= " order by a.bo_order ";