您当前的位置:主页 > 教程合集 > DedeCMS网站首页DedeCMS

DedeCMS Tags标签提示“系统无此标签,可能已经移除”解决方案

发布时间:2015-12-14编辑:余斗阅读:(0)字号:
    在做完《DedeCMS Tags标签页以及列表分页伪静态实现》之后,余斗发现一个新的问题,就是点击某些标签时,会提示:“系统无此标签,可能已经移除!”。 DedeCMS Tags标签提示“系统无此标签,可能已经移除”解决方案 余斗查询了一下相关资料,原因可能有以下几种,余斗就分情况来给出解决方案: 一、DEDECMS标签中包含“大写字母” 解决方法: 打开网站跟录下的tags.php文件,将代码(大概在第15行):

      $tag = trim($_SERVER['QUERY_STRING']);
     
    修改为:

      $tag = strtolower(trim($_SERVER['QUERY_STRING']));
     
    二、DEDECMS标签中包含中文 出现这个问题的原因是IIS伪静态中文转码为UTF8,解决方法就是在tags.php中加入判断UTF8编码的语句,如果是则转换为utf-8,这样就可以解决了。 解决方法: 1.把以下函数代码放在$PageNo = 1;下面,大概在第11行:

        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;
    }
    }
     
    2.将代码(大概在第25行):

    $tag = FilterSearch(urldecode($tag));
     
    修改为:

    if(is_utf8($tag)==1) { $tag = iconv("utf-8","utf-8",$tag); }
    $tag = urldecode($tag);
     
    这个作用就是调用上面的函数判断编码 如果是 utf8则转为utf-8。这样就完美解决了标签页的编码问题。
关键字词DedeCMSTags
余斗余斗
  1. 转载请注明:DedeCMS Tags标签提示“系统无此标签,可能已经移除”解决方案
  2. 版权声明:本站原创文章,由发表在DedeCMS分类下,于2015-12-14最后更新
DedeCMS Tags标签页以及列表分页伪静态实现
DedeCMS调用子栏目显示同级栏目解决方案
手机扫一扫 随身带着看
鸿运国际手机登录首页