自从烈火网改版为最火软件站之后,好久没给大家发表原创教程了,今天在这里给大家发表一篇在dedecms织梦系统下关于标签错误的问题及解决方法。 可能一些朋友遇到过这样的问题,这个问题提示的错误信息如下:
+ x& O- @# H4 m- R9 P+ ?系统无此标签,可能已经移除!
+ L* U: t/ R# U$ ^% {) S; [) s( ^$ M* W/ ]3 B3 u, n0 |1 M
你还可以尝试通过搜索程序去搜索这个关键字:前往搜索>>
9 o, J+ O J$ z# T$ u如果你的浏览器没反应,请点击这里... |
& B$ c3 ]+ I. y$ [0 b1 J 该问题可能出现的前提一:DEDECMS标签中包含“大写字母”: W$ c2 b1 l/ g# H0 U
解决方法:
3 }; `' |8 h7 D) ]2 U$ W 在网站根目录下找到tags.php 此文件,将以下代码替换掉:
) P# G. D- }* N+ n& g $tag = trim($_SERVER['QUERY_STRING']); 9 c3 R1 ]5 n( f+ ~7 ]
换成7 p# g* U0 _7 n6 P: o- ~6 b7 d5 N5 _: |) }
$tag = strtolower(trim($_SERVER['QUERY_STRING'])); 9 U* W9 W0 N+ B
该问题可能出现的前提二:DEDECMS标签伪静态后中文标签的问题: 一般情况下,伪静态不会有问题,但是百度自打3B大战之后,把原始结果中的网址转化为“跳转方式”,于是问题就出现了,原本的网址是这样的:$ e, w; H8 a8 m' F
http://www.xxx.com/tags_%D7%EE%BB%F0%C8%ED%BC%FE%D5%BE.html
- T) |! A/ r' E) L) E: Y" i1 X 被百度转化之后成为:; s: m% l1 _, d1 O" z* G2 S
http://www.xxx.com/tags_最火软件站.html% q' u8 |# v. R+ {/ t
这时又会出现上边的错误,出现这个问题的原因是IIS伪静态中文转码为UTF8,解决方法就是在tags.php中加入判断UTF8编码的语句,如果是则转换为GBK,这样就可以解决了,详细教程可参考《dedecms5.7完美tag标签伪静态》一文。 解决后的网址示例(复制到浏览器打开):http://www.qiuziliao.com/tags_吴莫愁.html3 r' v0 M: ]( B& E8 K& m3 M
另外网上还有一个方法:; V5 l/ X3 _5 k, X' K& {
在根目录找到”tags.php”文件,找到以下代码:
6 u) w9 j1 ~* p" V% \, N $tag = FilterSearch(urldecode($tag)); % [. @- Q; C/ z' ^
将其修改为: $ p/ R* h, u" t! y- A4 y
$tag = urldecode($tag);
: g; y$ ?' V* q3 W/ k 这个实在是不解,把FilterSearch删除?如何检索标签???不知道为什么这样做!) t' n* ]8 m, p# L/ ^# ?
|