学习NO.1 发表于 2015-2-28 01:05:19

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

上次关于通过用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++) {

discuz
分别将里面的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’

页: [1]
查看完整版本: 通过改聚合标签的数量实现DISCUZ门户文章标签功能