DedeCMS列表页Title加页码的方法(含Tags和搜索页)

DedeCMS列表页Title加页码的方法(含Tags和搜索页)

在《DedeCMS列表页Title标签seo规范化处理方法》中,余斗介绍了如何为列表页添加一个具体的页码标签,具体的代码为:

{dede:pagelist listitem=
“pageno” listsize=
“0”
function=
“html2text(@me)” runphp=
“yes”}
if(strlen(@me)>
10||@me==
1) @me=
“”;
else @me=
“_第”.str_replace(
‘ ‘,
,@me).
“页”;{/dede:pagelist}

 

但是,这个方法有个缺陷就是,只适用于列表页,且该栏目内容不止一页的情况下,如果栏目内容只有一页而且多于一篇,则会出现页码变为“第3条页”这样的错误引用,且这个方法不适用于搜索页,显然这个方法不是很完善,今天余斗就给出最佳的解决方法,对文章列表页、Tags列表页、搜索结果页都有效。

言归正传,老规矩,做以下修改之前记得备份好。

文章列表页

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

$this->ParseDMFields($this->PageNo,
1);

 

在这段代码上面加上:

$this->Fields[
‘pagexx’] = $this->PageNo;

$this->ParseTempletsFirst();

 

文章列表页中引用分页码的标签为:

第{dede:
field.pagexx/}页

 

Tags列表页

打开include/arc.taglist.class.php,找到:

$this->ParseDMFields($this->PageNo,
0);

 

在这段代码上面加上:

$this->Fields[
‘pagexx’] = $this->PageNo;

$this->ParseTempletsFirst();

 

Tags列表页中引用分页码的标签为:

第{dede:
field.pagexx/}页

 

搜索页

打开include/arc.searchview.class.php,找到:


if($this->PageNo==
1)

 

在这段代码上面加上(注意和前面两个不同):

$this->Fields[
‘pagexx’] = $this->PageNo;

 

搜索页中引用分页码的标签为:

第{dede:
field.pagexx/}页

 

这样就完美实现了DedeCMS中的三个最主要的列表页的分页显示,余斗在V5.7版本中测试通过,其他版本如有问题,欢迎在下面留言反馈。

分享到 :
相关推荐