本篇文章给大家介绍一下Discuz修改帖子标题字符长度限制的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

相关推荐:《discuz教程》一、环境Discuz 3.4二、更改方法本文将帖子标题的字符长度限制为最长180个字符。执行sql语句前,最好先备份下数据库:
1 | # mysqldump -u root -p Discuz > Discuz.sql |
(Discuz表示Discuz所使用的数据库名,Discuz.sql是备份出来的文件)登陆mysql:
1 | # mysql -u root -p |
(如果mysql的root账号没有设置密码,在提示输入密码的时候,直接回车即可。)切换到Discuz所使用的数据库:
1 | MariaDB [(none)]> use Discuz; |
执行以下3条sql语句,修改为180个字符的限制:
123 | MariaDB [Discuz]> ALTER TABLE `pre_forum_post` CHANGE `subject` `subject` VARCHAR(180) NOT NULL;MariaDB [Discuz]> ALTER TABLE `pre_forum_rsscache` CHANGE `subject` `subject` char(180) NOT NULL;MariaDB [Discuz]> ALTER TABLE `pre_forum_thread` CHANGE `subject` `subject` char(180) NOT NULL; |
注意:MariaDB [Discuz]> 是提示符,输入sql语句的时候不要将其输入。修改JS验证字符数,先备份文件:
1 | # cp 网站目录/static/js/forum_post.js 网站目录/static/js/forum_post.js_bak |
更改forum_post.js文件内容
1 | # vi 网站目录/static/js/forum_post.js |
查找到以下字符
123 | else if(mb_strlen(theform.subject.value) > 180) { showError(‘您的标题超过 180 个字符的限制’); return false; |
把80改成180(标红色的字符)。保存文件,退出。修改JS验证字符数,备份文件:
1 | # cp 网站目录/static/js/forum.js 网站目录/static/js/forum.js_bak |
编辑forum.js文件:
1 | # vi 网站目录/static/js/forum.js |
查找到如下内容:
1234 | theform.message.focus();} else if(mb_strlen(theform.subject.value) > 180) { s = ‘您的标题超过 180 个字符的限制’; theform.subject.focus(); |
把80改成180(标红色的字符)。保存文件,退出。修改模板中字符限制数,先备份文件:
1 | # cp 网站目录/template/default/forum/post_editor_extra.htm 网站目录/template/default/forum/post_editor_extra.htm_bak |
编辑post_editor_extra.htm文件:
1 | # vi 网站目录/template/default/forum/post_editor_extra.htm |
替换所有的80为180,保存文件,退出。修改模板中字符限制数,备份文件:
1 | # cp 网站目录/template/default/forum/forumdisplay_fastpost.htm 网站目录/template/default/forum/forumdisplay_fastpost.htm_bak |
编辑forumdisplay_fastpost.htm文件:
1 | # vi 网站目录/template/default/forum/forumdisplay_fastpost.htm |
替换所有的80为180,保存文件,退出。修改函数验证提示,备份文件:
1 | # cp 网站目录/source/function/function_post.php 网站目录/source/function/function_post.php_bak |
编辑function_post.php文件:
1 | # vi 网站目录/source/function/function_post.php |
查找到以下字符:
12 | if(dstrlen($subject) > 180) { return ‘post_subject_toolong’; |
把80改成180(标红色的字符)。保存文件,退出。找到语言包提示文字,备份文件:
1 | # cp 网站目录/source/language/lang_message.php 网站目录/source/language/lang_message.php_bak |
编辑lang_message.php文件:
1 | # vi 网站目录/source/language/lang_message.php |
查找到如下内容:
12 | ‘post_subject_toolong’ => ‘抱歉,您的标题超过 180 个字符修改标题长度’,把80改成180(标红色的字符)。保存文件,退出。 |
打开Discuz主页,以管理员(admin)身份登陆。点击页面右上方的 管理中心:

输入管理员的账号密码,进入管理中心,点击 工具-更新缓存-确定。如下图所示:

然后重启浏览器,即可生效。更多编程相关知识,请访问:编程入门!!以上就是聊聊Discuz怎么修改帖子标题的字符长度限制的详细内容,更多请关注php中文网其它相关文章!
原始链接:https://www.php.cn/cms/discuz/468923.html