在《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

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。