그누보드5 페이징을 Bootstrap Pagination으로 변경
extend 폴더에 user.config.php 파일에 아래 함수를 추가합니다.
bbs/list.php 파일 199줄에
$write_pages = get_paging2(G5_IS_MOBILE ? $config['cf_mobile_pages'] : $config['cf_write_pages'], $page, $total_page, './board.php?bo_table='.$bo_table.$qstr.'&page=');
로 수정해주세요.
함수명을 get_paging -> get_paging2 로 해주면 됩니다.
bbs/new.php 에도 위와 같이 수정하면 됩니다.
[code]
// 한페이지에 보여줄 행, 현재페이지, 총페이지수, URL
function get_paging2($write_pages, $cur_page, $total_page, $url, $add = "") {
//$url = preg_replace('#&page=[0-9]*(&page=)$#', '$1', $url);
$url = preg_replace('#&page=[0-9]*#', '', $url) . '&page=';
$str = '';
if ($cur_page > 1) {
$str .= '<li>';
$str .= '<a href="' . $url . '1' . $add . '" class="pg_page pg_start">처음</a>' . PHP_EOL;
$str .= '</li>';
}
$start_page = ( ( (int) ( ($cur_page - 1 ) / $write_pages ) ) * $write_pages ) + 1;
$end_page = $start_page + $write_pages - 1;
if ($end_page >= $total_page) {
$end_page = $total_page;
}
if ($start_page > 1) {
$str .= '<li>';
$str .= '<a href="' . $url . ($start_page - 1) . $add . '" class="pg_page pg_prev">이전</a>' . PHP_EOL;
$str .= '</li>';
}
if ($total_page > 1) {
for ($k = $start_page; $k <= $end_page; $k++) {
if ($cur_page != $k) {
$str .= '<li>';
$str .= '<a href="' . $url . $k . $add . '" class="pg_page">' . $k . '<span class="sr-only">페이지</span></a>' . PHP_EOL;
$str .= '</li>';
} else {
$str .= '<li class="active">';
$str .= '<label class="sr-only">열린</label><a href="#">' . $k . '</a><label class="sr-only">페이지</label>' . PHP_EOL;
$str .= '</li>';
}
}
}
if ($total_page > $end_page) {
$str .= '<li>';
$str .= '<a href="' . $url . ($end_page + 1) . $add . '" class="pg_page pg_next">다음</a>' . PHP_EOL;
$str .= '</li>';
}
if ($cur_page < $total_page) {
$str .= '<li>';
$str .= '<a href="' . $url . $total_page . $add . '" class="pg_page pg_end">맨끝</a>' . PHP_EOL;
$str .= '</li>';
}
if ($str) {
return "<nav class=\"pg_wrap\"><ul class='pagination'>{$str}</ul></nav>";
} else {
return "";
}
}
[/code]
bbs/list.php 파일 199줄에
$write_pages = get_paging2(G5_IS_MOBILE ? $config['cf_mobile_pages'] : $config['cf_write_pages'], $page, $total_page, './board.php?bo_table='.$bo_table.$qstr.'&page=');
로 수정해주세요.
함수명을 get_paging -> get_paging2 로 해주면 됩니다.
bbs/new.php 에도 위와 같이 수정하면 됩니다.
[code]
// 한페이지에 보여줄 행, 현재페이지, 총페이지수, URL
function get_paging2($write_pages, $cur_page, $total_page, $url, $add = "") {
//$url = preg_replace('#&page=[0-9]*(&page=)$#', '$1', $url);
$url = preg_replace('#&page=[0-9]*#', '', $url) . '&page=';
$str = '';
if ($cur_page > 1) {
$str .= '<li>';
$str .= '<a href="' . $url . '1' . $add . '" class="pg_page pg_start">처음</a>' . PHP_EOL;
$str .= '</li>';
}
$start_page = ( ( (int) ( ($cur_page - 1 ) / $write_pages ) ) * $write_pages ) + 1;
$end_page = $start_page + $write_pages - 1;
if ($end_page >= $total_page) {
$end_page = $total_page;
}
if ($start_page > 1) {
$str .= '<li>';
$str .= '<a href="' . $url . ($start_page - 1) . $add . '" class="pg_page pg_prev">이전</a>' . PHP_EOL;
$str .= '</li>';
}
if ($total_page > 1) {
for ($k = $start_page; $k <= $end_page; $k++) {
if ($cur_page != $k) {
$str .= '<li>';
$str .= '<a href="' . $url . $k . $add . '" class="pg_page">' . $k . '<span class="sr-only">페이지</span></a>' . PHP_EOL;
$str .= '</li>';
} else {
$str .= '<li class="active">';
$str .= '<label class="sr-only">열린</label><a href="#">' . $k . '</a><label class="sr-only">페이지</label>' . PHP_EOL;
$str .= '</li>';
}
}
}
if ($total_page > $end_page) {
$str .= '<li>';
$str .= '<a href="' . $url . ($end_page + 1) . $add . '" class="pg_page pg_next">다음</a>' . PHP_EOL;
$str .= '</li>';
}
if ($cur_page < $total_page) {
$str .= '<li>';
$str .= '<a href="' . $url . $total_page . $add . '" class="pg_page pg_end">맨끝</a>' . PHP_EOL;
$str .= '</li>';
}
if ($str) {
return "<nav class=\"pg_wrap\"><ul class='pagination'>{$str}</ul></nav>";
} else {
return "";
}
}
[/code]
댓글 1개
8년 전
유용하게 잘 사용 했습니다.^^
감사합니다.
감사합니다.
게시판 목록
그누보드5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 2575 | 9개월 전 | 549 | ||
| 2574 | 9개월 전 | 924 | ||
| 2573 |
두리삼촌v
|
9개월 전 | 597 | |
| 2572 | 9개월 전 | 545 | ||
| 2571 | 9개월 전 | 590 | ||
| 2570 |
두리삼촌v
|
9개월 전 | 627 | |
| 2569 |
두리삼촌v
|
9개월 전 | 656 | |
| 2568 |
두리삼촌v
|
9개월 전 | 451 | |
| 2567 |
두리삼촌v
|
9개월 전 | 433 | |
| 2566 | 9개월 전 | 729 | ||
| 2565 | 9개월 전 | 656 | ||
| 2564 | 9개월 전 | 463 | ||
| 2563 | 10개월 전 | 1017 | ||
| 2562 |
|
10개월 전 | 666 | |
| 2561 | 10개월 전 | 908 | ||
| 2560 | 10개월 전 | 645 | ||
| 2559 |
|
10개월 전 | 495 | |
| 2558 | 10개월 전 | 648 | ||
| 2557 | 10개월 전 | 944 | ||
| 2556 | 10개월 전 | 1323 | ||
| 2555 | 10개월 전 | 740 | ||
| 2554 |
|
10개월 전 | 735 | |
| 2553 | 10개월 전 | 663 | ||
| 2552 | 10개월 전 | 854 | ||
| 2551 | 10개월 전 | 753 | ||
| 2550 |
|
10개월 전 | 707 | |
| 2549 | 10개월 전 | 1015 | ||
| 2548 | 10개월 전 | 660 | ||
| 2547 | 10개월 전 | 1191 | ||
| 2546 | 10개월 전 | 651 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기