当前位置:Gxlcms > PHP教程 > 想修改PHPCMS分页的URL有好人吗?该怎么解决

想修改PHPCMS分页的URL有好人吗?该怎么解决

时间:2021-07-01 10:21:17 帮助过:8人阅读

想修改PHPCMS分页的URL 有好人吗?
PHP code

function pages($num, $curr_page, $perpage = 20, $urlrule = '', $array = array(), $catid = 0)
{
    global $PHPCMS;
    if($PHPCMS['pagemode'] && $num > $perpage)
    {
        $url = load('url.class.php');
        $multipage = '';
        if($num > $perpage)
        {
            $page = 11;
            $offset = 4;
            $pages = ceil($num / $perpage);
            $from = $curr_page - $offset;
            $to = $curr_page + $offset;
            $more = 0;
            if($page >= $pages)
            {
                $from = 2;
                $to = $pages-1;
            }
            else
            {
                if($from <= 1)
                {
                    $to = $page-1;
                    $from = 2;
                }
                elseif($to >= $pages)
                {
                    $from = $pages-($page-2);
                    $to = $pages-1;
                }
                $more = 1;
            }
            if($urlrule == '') $urlrule = url_par('page={$page}');

            $multipage .= '总数:'.$num.'  ';

            if($curr_page>0)
            {
                $multipage .= $catid ? 'category($catid, $curr_page-1, 1, 1).'">上一页' : '上一页';
                
                if($curr_page==1)
                {
                    $multipage .= '1 ';
                }
                elseif($curr_page>6 && $more)
                {
                    $multipage .= $catid ? 'category($catid, 1, 1, 1).'">1..' : '1..';
                }
                else
                {
                    $multipage .= $catid ? 'category($catid, 1, 1, 1).'">1' : '1 ';
                }
            }
            for($i = $from; $i <= $to; $i++)
            {
                if($i != $curr_page)
                {
                    $multipage .= $catid ? 'category($catid, $i, 1, 1).'">'.$i.' ' : ''.$i.' ';
                }
                else
                {
                    $multipage .= ' '.$i.' ';
                }
            }
            if($curr_page<$pages)
            {
                if($curr_page<$pages-5 && $more)
                {
                    $multipage .= $catid ? '..category($catid, $pages, 1, 1).'">'.$pages.' category($catid, $curr_page+1, 1).'">下一页' : '..'.$pages.' 下一页';
                }
                else
                {
                    $multipage .= $catid ? 'category($catid, $pages, 1, 1).'">'.$pages.' category($catid, $curr_page+1, 1, 1).'">下一页' : ''.$pages.' 下一页';
                }
            }
            elseif($curr_page==$pages)
            {
                $multipage .= ' '.$pages.'下一页';
            }
        }
        return $multipage;
    }
    else
    {
        $total = $num;
        $page = $curr_page;
        if($num < 1) return '';
        if($urlrule == '') $urlrule = url_par('page={$page}');
        $pages = ceil($total/$perpage);

        $page = min($pages, $page);
        $prepage = $page - 1;
        $prepage = max($prepage, 1);
        $nextpage = $page+1;
        $nextpage = min($nextpage, $pages);
        if($catid)
        {
            $url = load('url.class.php');
            $firstpage = $url->category($catid, 1, 1, 1);
            $prepage = $url->category($catid, $prepage, 1, 1);
            $nextpage = $url->category($catid, $nextpage, 1, 1);
            $lastpage = $url->category($catid, $pages, 1, 1);
            $urlpre = $url->category($catid, '', 1, 1);
        }
        else
        {
            $firstpage = pageurl($urlrule, 1, $array);
            $prepage = pageurl($urlrule, $prepage, $array);
            $nextpage = pageurl($urlrule, $nextpage, $array);
            $lastpage = pageurl($urlrule, $pages, $array);
            $urlpre = pageurl($urlrule, '', $array);
        }
        $data = str_replace('"', '\"', $PHPCMS['pageshtml']);
        eval("\$url = \"$data\";");
        return $url;
    }
}

                     

人气教程排行