设为首页收藏本站

我的菜园

 找回密码
 立即注册

只需一步,快速開始

搜索
热搜: Discuz WordPress
查看: 602|回复: 0
收起左侧

Discuz修改论坛默认发帖标题80个字符限制教程

[复制链接]
  • TA的每日心情
    慵懒
    2023-10-7 06:43
  • 发表于 2023-8-30 23:50:29 | 显示全部楼层 |阅读模式 来自 中国福建厦门
    discuz默认标题只能输入80个字符,是不是发现经常不够用,网上搜到的修改教程还是说的不够详细,这里我亲自尝试修改成功了,下面把详细过程记录下来分享给大家,我觉得改成180字符长度肯定足够了。当然,你也可以根据自己的实际需求来决定字符的长度。
    1、首先要修改数据库,需要修改/config/config_global.php里面的

    1. $_config['admincp']['runquery'] = '1';
    复制代码
    把“0”改成“1”,为什么要改成“1”?因为需要执行SQl语句,除了我们使用像phpmyadmin这样的MySQl调试工具之外,Discuz自身也是可以执行SQL语句功能的。你先打开后台——》站长——》数据库——》升级


    104217mq8ddk2q8lwae6b3.png


    还可以看到详细提示信息,其实还没有直接执行SQL语句的编辑框,你通过修改后再打开后台——》站长——》数据库——》升级,如图:



    104234dajhde5nx5hn2d5n.png


    可以看到直接执行SQL语句的编辑框了,然后分别运行下面的3条sql语句:
    1. ALTER TABLE `pre_forum_post` CHANGE `subject` `subject` VARCHAR(180) NOT NULL;
    复制代码
    1. ALTER TABLE `pre_forum_rsscache` CHANGE `subject` `subject` char(180) NOT NULL;
    复制代码
    1. ALTER TABLE `pre_forum_thread` CHANGE `subject` `subject` char(180) NOT NULL;
    复制代码

    2、找到文件sitatic/js/forum.js
    1. if(theform.message.value == '' && theform.subject.value == '') {                s = '抱歉,您尚未输入标题或内容';                theform.message.focus();        } else if(mb_strlen(theform.subject.value) > 80) {                s = '您的标题超过 80 个字符的限制';                theform.subject.focus();        }
    复制代码
    将里边的80字符改为180字符

    3、接着修改JS验证字符数:修改文件static/js/forum_post.js中的(可以Ctrl+F搜索字段)

    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) > 180) {
                    showError('您的标题超过 180 个字符的限制');
                    return false;
            }

    将里边的80字符改为180字符

    4、修改模板中写死的字符限制数:    找到文件\template\default\forum\post_editor_extra.htm中的80字符限制,修改为180(可以Ctrl+F搜索字段):

    1. <!--{if $_GET[action] != 'reply'}-->
    2.                                 <span><input type="text" name="subject" id="subject" class="px" value="$postinfo[subject]" style="width: 25em" tabindex="1" /></span>
    3.                         <!--{else}-->
    4.                                 <span id="subjecthide" class="z">RE: $thread[subject] [<a href="javascript:;">{lang modify}</a>]</span>
    5.                                 <span id="subjectbox" style="display:none"><input type="text" name="subject" id="subject" class="px" value="" style="width: 25em" /></span>
    6.                         <!--{/if}-->                        
    7.                         <span id="subjectchk"{if $_GET[action] == 'reply'} style="display:none"{/if}>{lang comment_message1} <strong id="checklen">180</strong> {lang comment_message2}</span>
    8.                         <script type="text/javascript">strLenCalc($('subject'), 'checklen', 180)</script>
    复制代码
    将里边的80字符改为180字符,如上
    5、找到文件\template\default\forum\forumdisplay_fastpost.htm

    1. <input type="text" id="subject" name="subject" class="px" value="" tabindex="11" style="width: 25em" />
    2. <span>{lang comment_message1} <strong id="checklen">180</strong> {lang comment_message2}</span>
    复制代码

    将里边的80字符改为180字符,如上

    6、修改函数验证提示:找到文件source/function/function_post.php

    1. if(dstrlen($subject) > 180) {
    2. return 'post_subject_toolong';

    3. }
    复制代码

    将里边的80字符改为180字符,如上

    7、找到语言包提示文字,打开 source/language/lang_messege.php
    1.   'post_subject_toolong' => '抱歉,您的标题超过 180 个字符修改标题长度',
    复制代码
    更新下缓存,好了,到现在你的论坛发帖标题就修改为180个字符了,完全够用了!


    1、本站所有发布的技术资源或文章,若未标明原创均为网络收藏资源,所有权归原创作者所有,本站仅提供交流学习之用,切勿用于商业用途!

    2、本站所有未提及收费的资源均为免费分享,不提供任何技术支持,如发现任何BUG,都可在这回复,大家共同交流解决。

    3、发帖不易,部份帖子会收取适量积分才能查看或下载,不可退款,敬请谅解,谢谢!

    草根般深入探索与分享,就在我的菜园。
    回复

    使用道具 举报

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

    本版积分规则

    亲爱的,赶快加入我们吧!
    X
    获取帮助
    X

    客服咨询

    菜心哥 旺旺客服

    微博收听

    鹭彩星微博

    工作时间

    8:30 - 23:00

    QQ|Archiver|手机版|小黑屋|老菜心 ( 闽ICP备16022933号-1 )|网站地图

    GMT+8, 2024-5-11 18:25 , Processed in 0.034665 second(s), 36 queries .

    Powered by Lucaixing! X3.4 Licensed

    © 2016-2024 Lucaixing.

    快速回复 返回顶部 返回列表