码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2017-03-01 23:10:15      阅读:542      评论:0      收藏:0      [点我收藏+]

标签:bnu   item   修改   tab   var   notepad++   www   add   highlight   

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

[PHP] 纯文本查看 复制代码
001
$tagarray_all = explode("\t", $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

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

标签:bnu   item   修改   tab   var   notepad++   www   add   highlight   

原文地址:http://www.cnblogs.com/yaogua/p/6486622.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!