1998年互联网崛起,程序人奋勇前行;If,程序基本逻辑,开启程序人生[if98];谨以此站献给奋斗中的你

发表文章 上传软件
当前位置: 主页 > 程序人生 > 学习心得 >

DedeCMS 5.7提示“系统无此标签,可能已经移除”的收藏挑错

2018-06-19 17:37 采编:程序人生 阅读 投稿赚币
DedeCMS 5.7提示“系统无此标签,可能已经移除”的解决方法

前几天 用dedecms5.7sp1给朋友做了一个站,他想要tag的地址以中文的方式展示

比如http://www.itbyc.com/tags?php/%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E%E4%BC%98%E5%8C%96/
显示为:http://www.itbyc.com/tags/织梦系统/
于是给他做了伪静态,然后伪静态时,我把include/taglib/tag.lib.php里边的的$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
改成了

 $row['link'] = $cfg_cmsurl."/tags/".($row['keyword'])."/";
把urlencode也去掉了,刚开始在本地是可以的,做完了把网站搬到服务器时,(他的服务器是Linux(centos)的),发现dedecms tag有问题,老是提示:
 
系统无此标签,可能已经移除!

你还可以尝试通过搜索程序去搜索这个关键字:前往搜索>>

试了好多方法还是不行!

但英文的又可以,我想肯定是编码有问题,上网查了下,果然如此,然后用了以下的方法完美解决了问题!

解决dedecms 中文tag  系统无此标签,可能已经移除! 方法如下:

先在根目录下找到tags.php打开后将以下代码注释掉:

$tag = trim($_SERVER['QUERY_STRING']);

 找到上面一行,把他注释了,然后添加这行
$tag = strtolower(trim($_SERVER['QUERY_STRING']));
这句的意思是判断UTF8编码的字符,如果是UTF8则转换为GBK!

此时你再刷新,如果还不行,那么重来!把上面添加的删了,取消注释(不同的服务器可能出现的情况不一样,所以有两种解决办法)
 

第一步、打开tags.php,在$tag = trim($_SERVER['QUERY_STRING']);下面添加下面的代码,切记是下面,否则不行

function is_utf8($tag) 
{ 
if (preg_match("/^([".chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)."]{1}[".chr(128)."-".chr(191)."]{1}){1}/",$tag) == true || preg_match("/([".chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)."]{1}[".chr(128)."-".chr(191)."]{1}){1}$/",$tag) == true || preg_match("/([".chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)."]{1}[".chr(128)."-".chr(191)."]{1}){2,}/",$tag) == true) 
{ 
return true; 
} 
else 
{ 
return false; 
} 
}

第二步、在$tag = FilterSearch(urldecode($tag));添加下面一句,切记是上面,否则失败

if(is_utf8($tag)==1) { $tag = iconv("utf-8","gbk",$tag); }
这个作用就是调用上面的函数判断编码 如果是 utf8则转为gbk!

如果你现在保存刷新的话,中文是可以了,但是部分tag还是会出错的,

比如:JvavScript  SEO  等等这样子的(区分大小写),所以还差最后一步


最后一步、把$tag = FilterSearch(urldecode($tag));注释了,添加下面的这行

$tag = urldecode($tag);
也就是去掉 FilterSearch();

此时、dedecms提示 
系统无此标签,可能已经移除!的问题就解决了,还有不懂的可以在下面留言,我会及时的给你们答复!
相关标签:
程序人生if98.com,专注IT人成长、所需、职场,欢迎参与撰稿、分享资源!

扫一扫关注程序人生公众号

免责声明:本文内容由[程序人生]用户自行发布或编辑转载,本站不拥有所有权、不承担相关法律责任。 如发现有涉嫌抄袭的内容,可邮件 web@if98.com 举报,并提供证据,一经查实,本站将立刻删除涉嫌侵权内容。

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片

站长推荐dedecms模板

站长推荐资源下载

站长推荐文章

  • 我的编程之路:从好玩到玩好

    先解释下标题吧:好玩指的是爱好、觉得有趣,玩好指的是把事情搞定、让事物变得更好。 第一次接触电脑 我最早接触电脑是小学四年级的时候,一九九几年,那是一个秋天,有一位

    if98comzyq 2018-07-17 11:49:25发布 学习心得 320阅读 0 评论

  • 给未来程序员的15个顶级职业建议

    好吧,我觉得10条不够,应该有15条职业建议。不过首先,我想解释一下出色的职业生涯是什么样的。 他们的进步曲线并不是每个月都会上升一点的直线图形。(即便是普通人的职业生

    if98comzyq 2018-07-17 11:46:44发布 学习心得 301阅读 0 评论

  • 程序员你为什么迷茫?

    你曾经充满热情,是一位开源软件倡导者,你崇尚全栈工程师才有未来的理念,你渴望改变世界。但是现在你每天都处于焦虑之中,你每天不断地学习各种技术Kotlin、Swift、React Native、

    if98comzyq 2018-07-17 11:58:36发布 学习心得 175阅读 0 评论

  • 如何伪装成一个年薪20万刀以上的码农?

    年轻的程序猿朋友们,从东岸、中部、南加迁徙到硅谷的你,是否希望远处的美女向你投来崇拜的目光?希望身边的朋友觉得你很酷很牛逼?今天我们来聊聊如何在硅谷装成一个牛逼(

    if98comzyq 2018-07-17 11:47:09发布 学习心得 131阅读 0 评论

  • 程序员的工作总结

    在新的公司工作半年了时间飞逝,作为一名工程师,也要时刻对自己反省,这样才能够有所提升,在工作中我总结了一下几点,这个可能也是大家常见的一些问题,好记性不如烂笔头,

    if98comhcw 2018-06-13 11:59:41发布 学习心得 97阅读 0 评论

  • 做博士还是做一个专业的程序员?

    当我从大学毕业获得计算机科学学位的时候,我就想继续学习并获得博士学位。但是,我又想作为一个软件开发者去参与工作,所以我在这一行中工作了五年之后,又回去念了一年的博

    if98comzyq 2018-07-17 11:49:03发布 学习心得 97阅读 4 评论

论坛推荐

关于我们

微信公众号

扫码关注官方微信

返回顶部