### [DedeCMS系统TAG标签和分页伪静态怎么设置](https://www.prosaas.cn/article/7981) **Published:** 2019-12-14T02:02:57 **Author:** 5201314 **Excerpt:** DedeCMS系统TAG标签和分页伪静态怎么设置?现在好多CMS系统都有TAGS标签这项功能,知名的DEDEC… **![](//zhiqipro.oss-cn-beijing.aliyuncs.com/2023/12/20231212130658842.jpg)** **DedeCMS系统TAG标签和分页伪静态怎么设置?** 现在好多CMS系统都有TAGS标签这项功能,知名的DEDECMS也有,但是它的标签功能很差,不利于seo优化,同时也有很多问题,比如:当前页不存在上一页时,链接为“-1”的问题,还有出现“系统无此标签,可能已经移除”的问题。 推荐学习:织梦cms 今天小编就教大家把标签伪静态(部分资料来源于网络),同时也修复了一些上述提到的BUG。 1.修改前台显示链接 我们这里达到的效果就是使原来/tags.php?keywors更改为/tags/keywords.html。 这里主要修改下调用的标签,在/include/taglib/tag.lib.php中,在87行找到 $row\['link'\] = $cfg\_cmsurl."/tags?".urlencode($row\['keyword'\]);   将其改为: $row\['link'\] = $cfg\_cmsurl."/tags/".urlencode($row\['keyword'\]).".html"; 2.修改分页代码部分 我们需要修改include/arc.taglist.class.php,找到分页函数,将其替换为: /\*\* \* 获取动态的分页列表 \* \* @access public \* @param int $list\_len 列表宽度 \* @param string $listitem 列表样式 \* @return string \*/ function GetPageListDM($list\_len,$listitem="info,index,end,pre,next,pageno") { $prepage=""; $nextpage=""; $prepagenum = $this->PageNo - 1; $nextpagenum = $this->PageNo + 1; if($list\_len == "" || preg\_match("/\[^0-9\]/", $list\_len)) { $list\_len = 3; } $totalpage = $this->TotalPage; if($totalpage <= 1 && $this->TotalResult > 0) { return "共1页/".$this->TotalResult."条"; } if($this->TotalResult == 0) { return "共0页/".$this->TotalResult."条"; } $maininfo = "共{$totalpage}页/".$this->TotalResult."条\\r\\n"; $purl = $this->GetCurUrl(); $basename = basename($purl); $tmpname = explode('.', $basename); $purl = str\_replace($basename, '', $purl).urlencode($this->Tag); //var\_dump($purl);exit; //$purl .= "?/".urlencode($this->Tag); //获得上一页和下一页的链接 //if($this->PageNo != 1) 这是修正上一页为负数的问题 if($this->PageNo != 1 && $this->PageNo != "") { $prepage.="
  • 上一页
  • \\r\\n"; $indexpage="
  • 首页
  • \\r\\n"; } else { $indexpage="
  • 首页
  • \\r\\n"; } if($this->PageNo!=$totalpage && $totalpage>1) { $nextpage.="
  • 下一页
  • \\r\\n"; $endpage="
  • 末页
  • \\r\\n"; } else { $endpage="
  • 末页
  • \\r\\n"; } //获得数字链接 $listdd=""; $total\_list = $list\_len \* 2 + 1; if($this->PageNo >= $total\_list) { $j = $this->PageNo - $list\_len; $total\_list = $this->PageNo + $list\_len; if($total\_list > $totalpage) { $total\_list = $totalpage; } } else { $j=1; if($total\_list > $totalpage) { $total\_list = $totalpage; } } for($j; $j<=$total\_list; $j++) { if($j == $this->PageNo) { $listdd.= "
  • $j
  • \\r\\n"; } else { $listdd.="
  • ".$j."
  • \\r\\n"; } } $plist = ''; if(preg\_match('/info/i', $listitem)) { $plist .= $maininfo.' '; } 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.' '; } return $plist; } 3.设置伪静态规则 我们这里以iis7为例子,设置以下规则: 以上就是DedeCMS系统TAG标签和分页伪静态怎么设置的详细内容,更多请关注知企PROSAAS其它相关文章! **Categories:** DEDECMS ---