学习NO.1 发表于 2024-12-16 08:09:52

修改discuz X3.2论坛标题80个字符的长度限制的具体方法

关于discuz论坛标题限制80个字符的修改,我已经修改很多次了,但是每次都是去乱找,看网上的,因为这个修改的文件比较多,这一次为了不以后还麻烦,干脆自己也记录一下吧。 1:修改数据库,需要执行sql语句 数据表前缀要和你的一致,有的人在安装论坛的时候,会修改这个。
ALTER TABLE `pre_forum_post` CHANGE `subject` `subject` VARCHAR(200) NOT NULL;ALTER TABLE `pre_forum_rsscache` CHANGE `subject` `subject` char(200) NOT NULL;ALTER TABLE `pre_forum_thread` CHANGE `subject` `subject` char(200) NOT NULL;

2:修改js验证文件,找到static/js/forum_post.js文件,在里面找下下面这一段,
if(($('postsubmit').name != 'replysubmit' && !($('postsubmit').name == 'editsubmit' && !isfirstpost) && theform.subject.value == "") || !sortid && !special && trim(message) == "") {showError('抱歉,您尚未输入标题或内容');return false;} else if(mb_strlen(theform.subject.value) > 80) {showError('您的标题超过 80 个字符的限制');return false;} 修改为 if(($('postsubmit').name != 'replysubmit' && !($('postsubmit').name == 'editsubmit' && !isfirstpost) && theform.subject.value == "") || !sortid && !special && trim(message) == "") {showError('抱歉,您尚未输入标题或内容');return false;} else if(mb_strlen(theform.subject.value) > 200) {showError('您的标题超过 200 个字符的限制');return false;}

3:还是修改js文件,找到sitatic/js/forum.js文件,里面也有差不多的一段
if(theform.message.value == '' || theform.subject.value == '') {s = '抱歉,您尚未输入标题或内容';theform.message.focus();} else if(mb_strlen(theform.subject.value) > 80) {s = '您的标题超过 80 个字符的限制';theform.subject.focus();} 修改为 if(theform.message.value == '' || theform.subject.value == '') {s = '抱歉,您尚未输入标题或内容';theform.message.focus();} else if(mb_strlen(theform.subject.value) > 200) {s = '您的标题超过 200 个字符的限制';theform.subject.focus();}

4:修改模版文件,找到template\default\forum\post_editor_extra.htm文件, 除了第一个80,其他全部换成200.
5:还是修改程序文件,找到template\default\forum\forumdisplay_fastpost.htm这里面也要修改 除了第一个和最后一个80,其他全部换成200.
6:修改验证函数文件,找到source/function/function_post.php文件
if(dstrlen($subject) > 80) {return 'post_subject_toolong';} 修改为 if(dstrlen($subject) > 200) {return 'post_subject_toolong';}

7:语言包也还是修改下,在source/language/lang_messege.php里面 'post_subject_toolong' => '抱歉,您的标题超过 80 个字符修改标题长度', 修改为 'post_subject_toolong' => '抱歉,您的标题超过 200 个字符修改标题长度',
8:最后更新下缓存就行,后面几个文件都是把数字80缓存200,你直接换也行,批量换代码也行。

页: [1]
查看完整版本: 修改discuz X3.2论坛标题80个字符的长度限制的具体方法