dedeCMS织梦系统在列表页输出当前页码相关信息的实现方法

本方法原理上适用于DedeV5.3及以上所有的版本,不分编码。

这个问题来源于刚才有一位朋友的需求,他希望在列表页可以自由的调用当前栏目的一些与页码相关的信息。这个需求如果用自带的织梦标签,是无法实现的,我们需要修改源代码后才可实现。

实现步骤

代码修改

打开/include/arc.listview.class.php 文件,找到:

if(preg_match('/index/i', $listitem)) $plist .= $indexpage;




if(preg_match('/pre/i', $listitem)) $plist .= $prepage;
 if(preg_match('/pageno/i', $listitem)) $plist .= $listdd;




if(preg_match('/next/i', $listitem)) $plist .= $nextpage;




if(preg_match('/end/i', $listitem)) $plist .= $endpage;




if(preg_match('/option/i', $listitem)) $plist .= $optionlist;




if(preg_match('/info/i', $listitem)) $plist .= $maininfo;

这样的代码,一共有两处(静态分页函数与动态分页函数),修改为:

$PageNo = $this->PageNo;




$TotalResult = $this->TotalResult;




$TotalPage = $totalpage;




$PageSize = $this->PageSize;




if(preg_match('/thisPage/i', $listitem)) $plist .= $PageNo;




if(preg_match('/TotalResult/i', $listitem)) $plist .= $TotalResult;




if(preg_match('/TotalPage/i', $listitem)) $plist .= $TotalPage;




if(preg_match('/PageSize/i', $listitem)) $plist .= $PageSize;





if(preg_match('/index/i', $listitem)) $plist .= $indexpage;




if(preg_match('/pre/i', $listitem)) $plist .= $prepage;




if(preg_match('/pageno/i', $listitem)) $plist .= $listdd;




if(preg_match('/next/i', $listitem)) $plist .= $nextpage;




if(preg_match('/end/i', $listitem)) $plist .= $endpage;




if(preg_match('/option/i', $listitem)) $plist .= $optionlist;




if(preg_match('/info/i', $listitem)) $plist .= $maininfo;

保存后即可。
注:要修改两处,一个是静态的,一个是动态的,你可以用相关编辑软件的搜索功能进行查找。

前台调用

接下来我们就可以在我们所需要的前台页面(模板文件名一般为 list_***.htm)进行调用了,调用的代码一共有如下几个:

文档总数:{dede:pagelist listitem="TotalResult"/}
分页总数:{dede:pagelist listitem="TotalPage"/}
分页大小:{dede:pagelist listitem="PageSize"/}
当前页码:{dede:pagelist listitem="thisPage"/}

它可以实现在列表页模板中任意地方的调用,也可以同时在多个地方进行调用。dedeCMS织梦系统在列表页输出当前页码相关信息的实现方法

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com