예전 부터 수정하고 싶었던 페이지 기능
짜잘한거라.. 생각만해두고 귀찮아서 냅두다가
오늘 심심해서 후다닥 처리했네요
별건없고 게시글 상세보기할때 뒤에 page붙는걸 없앴어요
그냥 글번호만 쳐도 아래 리스트에 해당 글위치를 찾아서 페이지 처리되도록했어요
즉 페이지get값이 없어도 해당 글위치 찾아서 리스트에 알아서 표시되도록..
뭐 있어도 그만 없어도 그만인거긴한데
가끔 특정글 검색 혹은 글번호로 찾아갈때 해당 페이지get값이 없으니 아래 리스트에 무조건 1페이지 표시가 되는게 불편해서 만들었네요
뭐 그렇습니다
다시 일하러...
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 13개
해당 글번호로 들어왔을때 페이지 위치찾아주는 함수 하나 작성하고 넣었습니다
bbs/list.php 에 wr_id있을때 wr_id가 몇번째 페이지인지 체킹해서
$page값을 먹여줘봤는데...음...되긴되는데...루트건드리는거말곤
방법이 안떠오르네요;;
if ($wr_id && !$page){
$sql = " SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM {$write_table} WHERE wr_id > '{$wr_id}' ";
$row2 = sql_fetch($sql);
$wr_id_count = $row2['cnt'];
}
if ($wr_id && !$page){
$page = ceil($wr_id_count / $page_rows);
}
도움 되시라고 올려봅니다~
function gc_get_boardview_page($wr_id, $board, $write_table){
global $wpdb;
if(GC_IS_MOBILE) {
$page_rows = $board['bo_mobile_page_rows'];
} else {
$page_rows = $board['bo_page_rows'];
}
$order_field = $board['bo_sort_field'] ? $board['bo_sort_field'] : 'wr_num';
$sql = $wpdb->prepare("SELECT rownum FROM ( select *, (@rownum:=@rownum+1) as rownum from `$write_table` as wr, (select @rownum:=0) tmp where wr.bo_table = '%s' order by $order_field ) A where wr_id = %d", $board['bo_table'], $wr_id);
$rownum = $wpdb->get_var($sql);
return ceil( (int)$rownum / $page_rows);
}