阿宝 发表于 2020-9-4 22:10:24

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

使用discuz发布的贴子的时候,还是会提示80字显示,有时候需要发多点字的标题的 还是很麻烦的下面也就分享一下修改标题80个字符的一些经验。



一共需要修改5个地方:
1、数据库修改

首先要修改数据库的地方
dz论坛后台打开位置到:
站长--->数据库---->升级
现在的这个版本 默认没有手动输入SQL 语句地方,需要先开启
如果您想自己随意书写 SQL 升级语句,需要将 config/config_global.php 当中的 $_config 设置修改为 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;
转换建表语句格式和字符集这个地方我没勾选,然后点击提交
这样第一步的 数据库修改 就完成了


2、修改JS验证字符数文件

修改JS验证字符数文件,js 文件有2个需要修改的
第一个是:static/js/forum_post.js的78-81行
        } else if(mb_strlen(theform.subject.value) > 80) {
                showError('您的标题超过 80 个字符的限制');
                return false;
        }
其中的两个 80 修改为200 第二处是:sitatic/js/forum.js的241到245行代码
        } else if(mb_strlen(theform.subject.value) > 80) {
                s = '您的标题超过 80 个字符的限制';
                theform.subject.focus();
        }
其中的两个 80 也修改为200


3、修改模板中写死的字符限制数


有两个文件 需要修改,里面的代码还是比较多的,要小心一些
第一个文件:/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




4、修改函数验证文件

打开 :source/function/function_post.php
查找定位在约361行处
if(dstrlen($subject) > 80) {return ‘post_subject_toolong’;}修改为:
if(dstrlen($subject) > 200) {return ‘post_subject_toolong’;}
这样 这个函数验证文件就修改完了


5、修改语言包文件


打开:source/language/lang_messege.php
查找定位在约998行处,做如下修改:‘post_subject_toolong’ => ‘抱歉,您的标题超过 80 个字符修改标题长度’,




到此 修改部分已经修改完了
记住: 修改后要 更新缓存,不然会有缓存在里面,有报错哈
更新缓存,在后台--->工具---->更新缓存里面更新


页: [1]
查看完整版本: Discuz X3.4修改帖子标题80个字符的限制