织梦cms系统TAG标签和分页伪静态设置教程
现在好多CMS系统都有TAGS标签这项功能,知名的DEDECMS也有,但是它的标签功能很差,不利于seo优化,同时也有很多问题,比如:当前页不存在上一页时,链接为“1”的问题,还有出现“系统无此标签,可能已经移除”的问题。
今天小编就教大家把标签伪静态(部分资料来源于网络),同时也修复了一些上述提到的BUG。
1.修改前台显示链接
我们这里达到的效果就是使原来/tags.php?keywors更改为/tags/keywords。
这里主要修改下调用的标签,在/include/taglib/tag.lib.php中,在87行找到
1
1$row['link']=$cfg_cmsurl."/tags?".urlencode($row['keyword']);
将其改为:rdredcrossn
1
1$row['link']=$cfg_cmsurl."/tags/".urlencode($row['keyword'])."";
2.修改分页代码部分
我们需要修改include/arc.taglistlass.php,找到分页函数,将其替换为:
001
001/**
002
002*获取动态的分页列表
003
003*
004
004* access public
005
005* param int$list_len列表宽度
006
006* param string$listitem列表样式
007
007* return string
008
008*/
009
009 function GetPageListDM($list_len,$listitem="info,index,end,pre,next,pageno")
010
010
019
019$totalpage=$this>TotalPage;
020
020 if($totalpage<=1&&$this>TotalResult>0)
021
021
024
024 if($this>TotalResult==0)
025
025
028
028$maininfo="<span class=\"pageinfo\">共页/".$this>TotalResult."条</span>\r\n";
029
029$purl=$this>GetCurUrl();
030
030$basename=basename($purl);
031
031$tmpname=explode('.',$basename);
032
032
033
033$purl=str_replace($basename,'',$purl).urlencode($this>Tag);
034
034//var_dump($purl);exit;
035
035//$purl.="?/".urlencode($this>Tag);
036
036
037
037//获得上一页和下一页的链接
038
038//if($this>PageNo!=1)这是修正上一页为负数的问题
039
039 if($this>PageNo!=1&&$this>PageNo!="")
040
040
044
044 else
045
045
048
048 if($this>PageNo!=$totalpage&&$totalpage>1)
049
049
053
053 else
054
054
057
057
058
058//获得数字链接
059
059$listdd="";
060
060$total_list=$list_len*2+1;
061
061 if($this>PageNo>=$total_list)
062
062
069
069}
070
070 else
071
071
077
077}
078
078 for($j;$j<=$total_list;$j++)
079
079
084
084 else
085
085
088
088}
089
089$plist='';rdredcrossn
090
090 if(preg_match('/info/i',$listitem))
091
091
094
094 if(preg_match('/index/i',$listitem))
095
095
098
098 if(preg_match('/pre/i',$listitem))
099
099
102
102 if(preg_match('/pageno/i',$listitem))
103
103
106
106 if(preg_match('/next/i',$listitem))
107
107
110
110 if(preg_match('/end/i',$listitem))
111
111
114
114 return$plist;
115
115}
116
116 3.设置伪静态规则
117
117
118
118我们这里以iis7为例子,设置以下规则:
119
119
120
120 Copy to ClipboardLiehuo.Net Codes引用的内容:[veryhuo]
121
121<?xml version="1.0"encoding="UTF8"?>
122
122<configuration>
123
123<system.webServer>
124
124<rewrite>
125
125<rules>
126
126<rule name="weather1"stopProcessing="true">
127
127<match url="tags/([^]+)\$"ignoreCase="true"/>
128
128<conditions logicalGrouping="MatchAll">
129
129<add input=""matchType="IsFile"negate="true"/>
130
130<add input=""matchType="IsDirectory"negate="true"/>
131
131</conditions>
132
132<action type="Rewrite"url="/tags.php?/"appendQueryString="false"/>
133
133</rule>
134
134<rule name="weather2"stopProcessing="true">
135
135<match url="tags/([^]+)([09]+)\$"ignoreCase="true"/>
136
136<conditions logicalGrouping="MatchAll">
137
137<add input=""matchType="IsFile"negate="true"/>
138
138<add input=""matchType="IsDirectory"negate="true"/>
139
139</conditions>
140
140<action type="Rewrite"url="/tags.php?//"appendQueryString="false"/>
141
141</rule>
142
142</rules>
143
143</rewrite>
144
144</system.webServer>
145
145</configuration>
好了,至此就搞定了。
上一篇:织梦dedecms使用Mysql8.0无法登录后台的解决办法
下一篇:DedeCMS提示"Call to a member function GetInnerText()"解决办法
dedecms