织梦cms模板分页列表显示前面和最后,中间用省略号

2024年10月21日 建站教程

功能介绍:现在的分页用listitem="info,index,end,pre,next,pageno",只显示前面几个,不显示最后一页,想实现分页列表显示前面和最后,中间用省略号。需要改一些代码。

打开include/arc.listview.class.php找到以下代码:

//找到以下代码,有2处
$total_list = $list_len * 2 + 1;

//在上面代码下面添加
if ($totalpage > $total_list) {
    $half = floor(($total_list - 4) / 2);
    $half_start = $this->PageNo - $half + 1;
    if ($total_list % 2 !== 0) --$half_start;
    $half_end = $this->PageNo + $half;
}

if (($totalpage - $this->PageNo) < ($total_list - 3)) {
    $half_start = $totalpage - $total_list + 3;
    unset($half_end);
}

if ($this->PageNo <= ($total_list - 3)) {
    $half_end = $total_list - 2;
    unset($half_start);
}
//找到以下代码,有2处
for($j;$j<=$total_list;$j++)

//替换成以下语句
for($j=1;$j<=$totalpage;$j++)
//找到以下代码,有2处
if($j==$this->PageNo)

在上面代码上面添加
if (isset($half_start) && $j < $half_start && $j > 1) {
    if ($j == 2) $listdd .= "<li style='border:0;'><a href='javascript:void(0)'>...</a></li>";
    continue;
}

if (isset($half_end) && $j > $half_end && $j < $totalpage) {
    if ($j == ($half_end + 1)) $listdd .= "<li style='border:0;'><a href='javascript:void(0)'>...</a></li>";
    continue;
}

本文链接:http://so.lmcjl.com/news/15914/

展开阅读全文