新闻中心

通过改聚合标签的数量实现discuz门户文章标签功能

作者 / 无忧主机 时间 2014-08-31 16:50:26

上次关于通过用tag模板实现discuz门户文章标签功能的方法估计很多站长朋友都用过了,效果应该都可以吧。这次无忧主机小编有找到了另一种解决方法,由于discuz就只带了一个聚合标签,但是标签数量只有8个,远远不够用。所以小编的这个方法就是修改聚合标签的数量。 聚合标签所在的文件里的个数限制都是固定的,写死了的,就是8,所以我们想要自定义增多几乎是不可能的,因为核心的程序是不可能改变。除非核心程序改变。 那么需要改的几个核心文件就有一下文件了: source/admincp/admincp_article.php 第49行: showformheader(‘article&operation=tag’);showtableheader(‘article_tag_setting’);for($i=1; $i<=8; $i++) [修改8为16] source/function/function_portalcp.php 分别在678行,692行,702行: ffor($i=1; $i<=8; $i++) {   [caption id="attachment_16214" align="alignnone" width="241"]discuz discuz[/caption] 分别将里面的8改成你想要的数字;比如我的就是16。以上的行数是相对您没有改过源代码的情况,如果改过,就按文件名搜索好了。 改变数据库字段长度 ALTER TABLE `pre_portal_article_title` CHANGE `tag` `tag` smallint( 16) UNSIGNED NOT NULL DEFAULT ’0′ 默认的tinyint的unsign型最大是255,而255只能支持8个标签。 所以这里改成smallint,最大支持32位,如果还不够就继续增大int型即可。 差不多基本都该完了,接下来就是后台,门户,文章管理,聚合标签,上数据 前台,发文,看聚合标签,有值。 或者手工在数据库那修改数据也行,数据存储在 pre_common_setting 表中的 skey 字段值为 “article_tags”的记录,然后修改 svalue 即可。可以用以下sql语句把 svalue 选出来修改: SELECT * FROM `pre_common_setting` WHERE skey = ’article_tags’  

本文地址:https://www.51php.com/discuz/16213.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服