채택완료

페이지 넘버 관련

2019-11-26 (화) 12:01:32 1,914
Copy
function get_paging($write_pages, $cur_page, $total_page, $url, $add="")

{

    global $aslang;

 

    //$url = preg_replace('#&page=[0-9]*(&page=)$#', '$1', $url);

    $url = preg_replace('#&page=[0-9]*#', '', $url) . '&page=';

 

    $str = '';

    if ($cur_page > 1) {

        $str .= '<a href="'.$url.'1'.$add.'" class="pg_page pg_start renew"><span class="renew-noTxt">'.$aslang['pg_start'].'</span></a>'.PHP_EOL; //처음

    }

 

    $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 .= '<a href="'.$url.($start_page-1).$add.'" class="pg_page pg_prev renew"><span class="renew-noTxt">'.$aslang['pg_prev'].'</span></a>'.PHP_EOL; //이전

 

    if ($total_page > 1) {

        for ($k=$start_page;$k<=$end_page;$k++) {

            if ($cur_page != $k)

                $str .= '<a href="'.$url.$k.$add.'" class="pg_page renew">'.$k.'<span class="sound_only">'.$aslang['pg_page'].'</span></a>'.PHP_EOL; //페이지

            else

                $str .= '<span class="sound_only">'.$aslang['pg_now'].'</span><strong class="pg_current renew">'.$k.'</strong><span class="sound_only">'.$aslang['pg_page'].'</span>'.PHP_EOL; //현재 페이지

        }

    }

 

    if ($total_page > $end_page) $str .= '<a href="'.$url.($end_page+1).$add.'" class="pg_page pg_next renew"><span class="renew-noTxt">'.$aslang['pg_next'].'</span></a>'.PHP_EOL; //다음

 

    if ($cur_page < $total_page) {

        $str .= '<a href="'.$url.$total_page.$add.'" class="pg_page pg_end renew"><span class="renew-noTxt">'.$aslang['pg_end'].'</span></a>'.PHP_EOL; //맨끝

    }

 

    if ($str)

        return "<nav class=\"pg_wrap renew\"><span class=\"pg renew\">{$str}</span></nav>";

    else

        return "";

}

/lib/common.lib.php
위 페이지 경로입니다.

이전 버튼이 10단위로 나오는데.. 1페이지 단위로 노출, 이동되게 하려면 어떻게 수정을 해줘야할까요??

답변 2개 / 댓글 1개

관리자 페이지 > 환경설정 > 기본환경설정 > 페이지 표시 수에서 설정합니다.

저기서 수정하면 모든 곳에 일괄 적용되니 특정 게시판만 적용하려면

bbs/list.php 파일 상단에 추가하세요.

if ($bo_table == '게시판id') $config['cf_write_pages'] = 1;

답변에 대한 댓글 1개

이 부분도 유용하게 쓸 수 있겠네요!! 정말 감사합니다.

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