Discuz!X3.2论坛标题字数突破80的限制解决方法

2018-10-22  本文已影响95人  7f4cf71ba8f6

本教程同样适用于Discuz!X3.3

搞定方式步骤

1、数据库修正;

二、修正JS验证字符数文件;

3、修正模板中写死的字符限定数;

4、修正函数验证文件;

5、修正言语包文件。

数据库修正

修正数据库题目字段的长度为200字符:启动下面的sql语句(注意修正伏笔科技的表的前缀):

注:操作前肯定备份数据

=代码开始code by FubiHost=

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验证字符数

1、找到文件static/js/forum_post.js的75-81行

本来文件限定是80,我改成200,以下全部变动都为200,你能改成伏笔科技想要的数字,但变动文件数字肯定要全部一样

=代码开始code by FubiHost=

!= '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;

}

2、找到文件sitatic/js/forum.js的212到218行代码:

=代码开始code by FubiHost=

== '' || theform.subject.value == '') {

s = '抱歉,您尚未输入题目或内容';

theform.message.focus();

} else if(mb_strlen(theform.subject.value) > 200) {

s = '您的题目超越 200 个字符的限定';

theform.subject.focus();

}

修正模板中写死的字符限定数

1、找到文件\template\default\forum\post_editor_extra.htm的25到33行:

=代码开始code by FubiHost=

$_GET[action] != 'reply'}-->

<span><input type="text" name="subject" id="subject" class="px" value="$postinfo[subject]" {if $_GET[action] == 'newthread'}onblur="if($('tags')){relatekw('-1','-1'{if $_G['group']['allowposttag']},function(){extraCheck(4)}{/if});doane();}"{/if} onkeyup="strLenCalc(this, 'checklen', 200);" style="width: 25em" tabindex="1" /></span>

<!--{else}-->

<span id="subjecthide" class="z">RE: $thread[subject] [<a href="javascript:;" onclick="display('subjecthide');display('subjectbox');return false;">{lang modify}</a>]</span>

<span id="subjectbox" style="display:none"><input type="text" name="subject" id="subject" class="px" value="" onkeyup="strLenCalc(this, 'checklen', 200);" style="width: 25em" /></span>

<!--{/if}-->

<span id="subjectchk"{if $_GET[action] == 'reply'} style="display:none"{/if}>{lang comment_message1} <strong id="checklen">200</strong> {lang comment_message2}</span>

<!--{/if}-->

2、找到文件\template\default\forum\forumdisplay_fastpost.htm31-32行:

=代码开始code by FubiHost=

id="subject" name="subject" class="px" value="" onkeyup="strLenCalc(this, 'checklen', 200);" tabindex="11" style="width: 25em" />

<span>{lang comment_message1} <strong id="checklen">200</strong> {lang comment_message2}</span>

修正函数验证文件

1、找到文件source/function/function_post.php的361-363行:

=代码开始code by FubiHost=

> 200) {

return 'post_subject_toolong';

}

修正言语包文件

1、open source/language/lang_messeage.php 找到998行:

=代码开始code by FubiHost=

=> '抱歉,您的题目超越 200 个字符修正题目长度',

教程已全部完成,别忘却到后台——工具——更新一下缓存。

本文转载修正自:源码专家

上一篇下一篇

猜你喜欢

热点阅读