dz7.2在发新帖的时候 ,新话题标题默认为80字,这就可能无法满足一些朋友的需求。我这里有一个办法可以解决,但是通过修改以后,标题字数最多为80个字。其中一个汉字算一个字,一个字母也算一个字,一个数字也算一个字。要修改的文件有:1、include\post.func.php 中有一处 if(strlen($subject) > 80) {2、include\js\post.js 中有两处 } else if(mb_strlen(theform.subject.value) > 80) { 和 showDialog('您的标题超过 80 个字符的限制。');3、include\js\viewthread.js 有两处} else if(mb_strlen(theform.subject.value) > 80) {和s = '您的标题超过 80 个字符的限制4、modcp\editpost.inc.php 中有一处if(strlen($subjectnew) > 80) {将以上的 80 改为 较大的数字即可!然后更新缓存!
有一个客户用discuz 7.2版本论坛建站,网站是搞旅游的,经常要在论坛中发一些活动,而活动的标题一般都不会少于80个汉字,这样就需要对部分源码与数据库动手术了
先看完成后的展示:
方法:
文件
在53行左右原代码:
80) { showDialog('您的标题超过 80 个字符的限制。'); return false; }
改成
} else if(mb_strlen(theform.subject.value) > 255) { showDialog('您的标题超过 85 个字符的限制。'); return false; }
二、打开include/js/viewthread.js文件
在226行左右原代码:
} else if(mb_strlen(theform.subject.value) > 80) { s = '您的标题超过 80 个字符的限制。'; theform.subject.focus(); }
改成
255) { s = '您的标题超过 85 个字符的限制。'; theform.subject.focus(); }
在511行左右原代码:
if(strlen($subject) > 80) { return 'post_subject_toolong'; }
改成
if(strlen($subject) > 255) { return 'post_subject_toolong'; }
在49行左右原代码:
if(strlen($subjectnew) > 80) { showmessage('post_subject_toolong'); }
改成
if(strlen($subjectnew) > 255) { showmessage('post_subject_toolong'); }
五、templates/default/messages.lang.PHP文件
在130行左右原代码
'post_subject_toolong' => '对不起,您的标题超过 80 个字符,请返回修改标题长度。',
改成
'post_subject_toolong' => '对不起,您的标题超过 85 个字符,请返回修改标题长度。',
PHP文件
在134行左右原代码
'标题超过80字节',
改成
'标题超过85字节',
以管理员身份进入论坛后台,找工具,数据库----“升级”输入:ALTER TABLE `cdb_threads` CHANGE `subject` `subject` VARCHAR(255) NOT NULL;ALTER TABLE `cdb_posts` CHANGE `subject` `subject` VARCHAR(255) NOT NULL;成功后,再更新一下缓存,即可!