方法一:
Discuz 标签重复:编辑帖子时,标签会越来越多,有的tag是自动生成的,即使将不需要的标签删除,保存以后还是会增加很多莫名其妙的标签。
Discuz tag重复的问题,可以通过修改数据库来实现。
解决Discuz tags重复的思路:
将指定帖子的tags字段重置为空白
重新编辑帖子,输入新的标签。
你可以通过程序或者MySQL客户端,在成功连接数据库并选择数据库以后执行以下SQL语句重置帖子标签.
其中x3_是表前缀,tid是要重置标签的那个帖子的id,这两个值需要自行修改- UPDATE `x3_forum_post` SET `tags` = '' WHERE `tid` = '4415' AND `first` = 1;
复制代码 重置tags字段以后,重新编辑主题帖,输入新的标签即可彼一时设tags标签。
方法二:
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];
- }
- }
- }
复制代码
相关教程:
【原创】DZ门户文章利用tag标签及摘要自动生成文章关键词keywords及文章描述description
【实测】门户文章标签之如何免费实现discuz!门户文章的标签功能,非插件
【原创】结合门户tag标签功能,将搜索链接修改为伪静态链接
【实测】教你修改DZ论坛帖子的标签数量,默认为5个修改为15个
【实测】DZ论坛发布帖子强制提醒用户设置帖子标签,增加帖子粘合度
【实测】Discuz教程后台用户管理的搜索数量修改
【实测】修改Discuz搜索显示数,搜索数,搜索展示数
【实测】Discuz!X3.1标签伪静态 Discuz!X3.0标签伪静态修改和伪静态规则(完整有用)
|