• Discuz tag 标签重复显示的解决方法


    最近论坛遇到个问题,Discuz tag标签出了问题,编辑一次就添加一个标签,如下图:
    <ignore_js_op> 
    删都删不掉,看着真TM不爽,于是,想到了解决办法,如下:
    Discuz帖子下方的tag标签重复显示,表现为相同的tag标签多次显示,帖子编辑次数越多,tag重复的次数越多。
    Discuz!官方直到Discuz X3.2也没有解决tag重复的问题。
    要解决Discuz标签重复,可以通过修改sourcemoduleforumforum_viewthread.php来实现。
    用notepad++之类的文本编辑软件打开forum_viewthread.php,搜索以下内容

    [PHP] 纯文本查看 复制代码
    001
    $tagarray_all = explode(" ", $post['tags']);


    将该行下方的以下代码

    [PHP] 纯文本查看 复制代码
    001
    002
    003
    004
    005
    006
    007
    008
    009
    if($tagarray_all) {
            foreach($tagarray_all as $var) {
                    if($var) {
                                    $tag = explode(',', $var);
                                    $posttag_array[] = $tag;
                                    $tagnames[] = $tag[1];
                    }
            }
    }


    修改为

    [PHP] 纯文本查看 复制代码
     
     
     
     
    001
    002
    003
    004
    005
    006
    007
    008
    009
    010
    011
    012
    013
    014
    $tagIds=array();
    if($tagarray_all) {
            foreach($tagarray_all as $var) {
                    if($var) {
                            $tag = explode(',', $var);
                            if(in_array($tag[0], $tagIds, true)){
                                            continue;
                            }
                            $tagIds[]=$tag[0];
                            $posttag_array[] = $tag;
                            $tagnames[] = $tag[1];
                    }
            }
    }
    更多 文章可以查看:http://www.yiyidibai.cc/thread-112-1-2.html
  • 相关阅读:
    js数组的基本用法及数组根据下标(数值或字符)移除元素
    Oracle备份一张表
    linux中常见的文件操作命令
    java图片二进制相互转换
    getParameterMap的使用
    前端常用
    Oracle 常用
    JAVA中int、String的类型转换
    MySQL 5.7 新特性大全和未来展望
    你有自己的Web缓存知识体系吗?
  • 原文地址:https://www.cnblogs.com/yaogua/p/6486622.html
Copyright © 2020-2023  润新知