自从烈火网改版为最火软件站之后,好久没给大家发表原创教程了,今天在这里给大家发表一篇在dedecms织梦系统下关于标签错误的问题及解决方法。 可能一些朋友遇到过这样的问题,这个问题提示的错误信息如下:: g+ ~. q- C# |( g: k: m! H
系统无此标签,可能已经移除!
! a' i! v9 d4 \4 X; @' e7 I& Z1 C; s
你还可以尝试通过搜索程序去搜索这个关键字:前往搜索>> ' S0 m# c5 h5 J( M2 N
如果你的浏览器没反应,请点击这里... | - P2 G3 x, U7 H5 _: P5 S: C' S
该问题可能出现的前提一:DEDECMS标签中包含“大写字母”
- _ p* j4 Q5 f( r }5 i i 解决方法:
3 D7 ?! }, F$ d% X+ x 在网站根目录下找到tags.php 此文件,将以下代码替换掉: 1 m s1 e+ d, d/ j0 @0 w) K
$tag = trim($_SERVER['QUERY_STRING']);
% h1 b/ M' I5 Z# u" L E# c" M 换成* F: g% D/ ~4 e( i3 i# G4 k/ p+ t) a
$tag = strtolower(trim($_SERVER['QUERY_STRING'])); 2 i0 O6 A; ~$ s- M9 H
该问题可能出现的前提二:DEDECMS标签伪静态后中文标签的问题: 一般情况下,伪静态不会有问题,但是百度自打3B大战之后,把原始结果中的网址转化为“跳转方式”,于是问题就出现了,原本的网址是这样的:5 g! D9 M4 c- v: x! F
http://www.xxx.com/tags_%D7%EE%BB%F0%C8%ED%BC%FE%D5%BE.html- M- W2 a+ @% B7 C, p2 I/ N1 u
被百度转化之后成为:
, w( r2 n9 ^9 q http://www.xxx.com/tags_最火软件站.html2 i3 A( {* ?; a! b* ]# q5 }0 i
这时又会出现上边的错误,出现这个问题的原因是IIS伪静态中文转码为UTF8,解决方法就是在tags.php中加入判断UTF8编码的语句,如果是则转换为GBK,这样就可以解决了,详细教程可参考《dedecms5.7完美tag标签伪静态》一文。 解决后的网址示例(复制到浏览器打开):http://www.qiuziliao.com/tags_吴莫愁.html
+ |& x6 Q! H- b- L# F; H/ U6 H \ 另外网上还有一个方法:
4 b4 Y" \; K# O6 k$ p 在根目录找到”tags.php”文件,找到以下代码:
) b1 \1 f- u5 D$ c $tag = FilterSearch(urldecode($tag));
+ S% _7 @6 H- m' ~8 w( l- j 将其修改为:
& A" P. ~) G$ U9 w: D $tag = urldecode($tag);
0 j9 `$ U# |1 G9 e$ V0 E 这个实在是不解,把FilterSearch删除?如何检索标签???不知道为什么这样做!( K! V8 U" u- h) H
|