Discuz帖子下方的tag标签重复显示,表现为相同的tag标签多次显示,帖子编辑次数越多,tag重复的次数越多。
Discuz!官方直到Discuz X3.2也没有解决tag重复的问题。
要解决Discuz标签重复,可以通过修改source\module\forum\forum_viewthread.php来实现。
用notepad++之类的文本编辑软件打开forum_viewthread.php,搜索以下内容- $tagarray_all = explode("\t", $post['tags']);
复制代码 将该行下方的以下代码- if($tagarray_all) {
- foreach($tagarray_all as $var) {
- if($var) {
- $tag = explode(',', $var);
- $posttag_array[] = $tag;
- $tagnames[] = $tag[1];
- }
- }
- }
复制代码 修改为
- $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];
- }
- }
- }
复制代码 保存文件,上传到服务器覆盖原始文件即可解决Discuz! tag重复的问题。 |
|