Discuz X3.4修改帖子标题80个字符的限制教程

[复制链接]
查看1146 | 回复0 | 2022-11-26 19:48:23 | 显示全部楼层 |阅读模式
一共需要修改5个地方: 1、数据库修改 2、修改JS验证字符数文件 3、修改模板中写死的字符限制数 4、修改函数验证文件 5、修改语言包文件
第一步,首先要修改数据库的地方。dz论坛后台打开位置到:站长--->数据库---->升级,现在的这个版本 默认没有手动输入SQL 语句地方,需要先开启。 如果您想自己随意书写 SQL 升级语句,需要将 config/config_global.php 当中的 $_config[admincp][runquery] 设置修改为 1。
开启后输入如下代码:
  1. 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;
复制代码
第二步,修改JS验证字符数文件  ,js 文件有2个需要修改的
第一个是:static/js/forum_post.js的77-83行
  1. if(($('postsubmit').name != 'replysubmit' && !($('postsubmit').name == 'editsubmit' && !isfirstpost) && theform.subject.value == "") || !sortid && !special && trim(message) == "") {
  2.                 showError('抱歉,您尚未输入标题或内容');
  3.                 return false;
  4.         } else if(mb_strlen(theform.subject.value) > 80) {
  5.                 showError('您的标题超过 80 个字符的限制');
  6.                 return false;
  7.         }
复制代码
其中的两个 80 修改为200
第二处是:  sitatic/js/forum.js的239-245行代码
  1. if(theform.message.value == '' || theform.subject.value == '') {
  2.                 s = '抱歉,您尚未输入标题或内容';
  3.                 theform.message.focus();
  4.         } else if(mb_strlen(theform.subject.value) > 80) {
  5.                 s = '您的标题超过 80 个字符的限制';
  6.                 theform.subject.focus();
  7.         }
复制代码
其中的两个 80 也修改为200,这样两处js文件就修改好了。
第三步,修改模板中写死的字符限制数。有两个文件 需要修改,里面的代码还是比较多的,要小心一些。
第一个文件:/template/default/forum/ 下的post_editor_extra.htm
查找字符 80 将这个文件里(除了第一个 80 字符外)所有的 80 替换为 200。
<select name="typeid" id="typeid" width="80">,这个80不要改,这个是宽度和标题字数没有关系。
第二个文件修改:/template/default/forum/ 下的 forumdisplay_fastpost.htm
查找字符 80 将这个文件里(除了第一个和最后一个代码的 80 字符)所有的 80 替换为 200。
第四步, 修改函数验证文件。打开:source/function/function_post.php,查找定位在约372行处:
if(dstrlen($subject) > 80) {return ‘post_subject_toolong’;}
改掉其中的80为200。
这样函数验证文件就修改完了。
第五步,最后修改语言包文件。打开:source/language/lang_messege.php,查找定位在约1007行处,修改如下文字:‘post_subject_toolong’ => ‘抱歉,您的标题超过 80 个字符修改标题长度’,改掉其中的80为200.
到此全部修改完毕,记住: 修改后要更新缓存,不然会有报错哈。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则