马海祥博客是一个专注于分享SEO优化、网站制作、网络营销和运营思维的自媒体博客!
马海祥博客 > 网站制作 > CMS管理系统 > 织梦DedeCms文章标题和简介摘要字数长度限制修改的方法教程

织梦DedeCms文章标题和简介摘要字数长度限制修改的方法教程

时间:2019-12-11   文章来源:马海祥博客   访问次数:

我们在使用织梦CMS系统建站的时候,网站前端在调用文章的过程中,经常会碰到标题和文章摘要会自动截取一定量的字数,而并非全部调用出来,无论怎么修改调用代码都不行,尤其是使用UTF8版本的织梦系统,调用的文字更少了。

织梦DedeCms文章标题和简介摘要字数长度限制修改的方法教程-马海祥博客

其实,这主要是因为Dedecms织梦系统默认的文章标题的最大长度为60字节,使用GBK版本的,也就是30个汉字;使用UTF8版本的,也就是10个汉字;如果文章标题超过60字节将会自动截断,导致标题显示不全,而现在文章标题30个汉字是远远不能满足需要的,所以,我们要做的就是突破系统默认的字数限制。

一、修改文章标题字数长度限制的方法

dedecms系统使用过程中,常遇到输入的标题原本输入的字数跟保存成功后的数字长度不一样,超过的会自动截断删除,那么少的字段不够用怎么办呢?

1、修改标题字数长度限制

对于这个问题,其实,修改的方法很简单,只要两步就可解决织梦DedeCms系统中限制文章标题字数的问题:

第一步、修改网站后台中的系统基本参数

织梦DedeCms文章标题和简介摘要字数长度限制修改的方法教程-马海祥博客

首先,进入网站后台,系统 -> 系统基本参数->其它选项 -> 文档标题最大长度;把参数修改为需要设置的标题最大长度,默认参数是60,一般我们修改成90,或者更大的数字。

第二步、执行SQL命令

使用phpMyAdmin修改dede_archives(如前缀修改过请自动替换)中title长度为90;也可以直接在织梦在后台中,进入“系统->SQL命令行工具”;中执行以下SQL语句代码:

alter table dede_archives change title title varchar(90)

这种情况下不需要登录数据库去修改值,只需要使用SQL命令即可,方便简单,但是提醒大家修改之前做好数据库的备份。

织梦DedeCms文章标题和简介摘要字数长度限制修改的方法教程-马海祥博客

然后点击确定,出现成功执行1个SQL语句即可完成对dedecms文章标题字数限制的修改(相关知识点可查看马海祥博客《织梦DedeCMS常用SQL语句标签调用语法及代码》的介绍)。

按照以上2步即可解决了,如果你按照上述方法修改后,仍然无法显示全部,那你需要排查一下问题可能出现在:一是模板问题,检查相应模板相应位置上是否使用了titlelen来限制字数;第二,可能是CSS上控制问题,检查对应CSS文件的相应代码,是否在CSS文件上进行了长度或者宽度限制。

2、解决dedecms UTF-8首页文章标题显示字数太短的办法

原因分析:因为UTF-8编码1个中文汉字占用的是3个字节,GBK占用的是2个字节,所以,原先$titlelen = AttDef($titlelen,30)等于最大取30个字节,所以最多只显示11个汉字。

解决方法:进入dedecms的后台,在“模板管理”中的“标签源码管理",找到arclist.lib.php ,点击“编辑”,找到“$titlelen = AttDef($titlelen,30);  ”条语句,把其中的30改为90或者更大的数值即可。当然你也可以在include aglib 这个目录中找到arclist.lib.php,然后同样的方法修改好,再传到你的空间。

3、织梦dedecms限制标题title字数的方法

数据库上已经扩展了标题字数的长度,那如果前端页面在调用过程中,需要限制或缩短标题字数呢?该如何调用呢?

织梦dedecms限制标题title字数的两种方法:

方法一、直接使用 titlelen 属性

比如:我想使网站前端页面调用的标题显示20个汉字,也就是40个字节,那么可以定义 titlelen='40' 即可,这种方法通常在列表标签arclist中使用。常规写法如:

{arclist typeid='2'  row='6'  titlelen='40'  flag='c'}
<a href='[field:arcurl/]'>[field:title/]</a>
{/arclist}

方法二、使用“cn_substr()”函数截取字符

比如:我想使网站前端页面调用的标题显示10个汉字,也就是20个字节,那么,我可以借用 function=cn_substr(@me,20/) 这个函数,其调用代码可以用:[field:title function="cn_substr(@me,20)"/] 。常规写法:

<a href='[field:arcurl/]'>[field:title function="cn_substr(@me,20)"/]</a>

这两种方法可以说是织梦cms常用的限制title字数的方法。

那么,这两种方法是否可以通用呢?

一般情况下,第一种方法适用于列表页title字数的限制,因为这样title的字数都是一样的,如果你用第二种方法的话,是控制不了title字数的。而第二种方法则使用于文章页或者其他地方需要控制title字数,因为字数都不一定一样的。当然了描述(description)也可以使用 function=“cn_substr()”这个函数(相关知识点可查看马海祥博客《利于SEO优化的织梦标签调用代码》的介绍)。

二、修改文章摘要长度的方法

在Dedecms系统中,文章摘要被设置了字数上限为250字符,设置上限的主要目的是减少数据库的冗余,保证网站良好的性能。但同时也会带来一些问题,尤其是使用UTF8编码的系统,1个中文汉字占用的是3个字节,可以调用的摘要文字也就83个字而已,显然还是有点少呀,那针对这个问题,我们该怎么修改呢?

1、先说下后台修改默认摘要长度的方法

后台->系统->系统基本参数->其它选项->自动摘要长度(0-250,0表示不启用)如果字数要求不多,直接填写数字就行了。

2、摘要大于250个字节的修改方法

方法一:

在Dedecms中,与文章摘要相关的php文件主要有:

/dede/archives_add.php

/dede/archives_edit.php

/dede/article_add.php

/dede/article_edit.php

/dede/article_description_main.php

在织梦/dede/文件下的add(article_add.php)页面中,有一句代码是:“$description = cn_substrR($description,$cfg_auot_description); ”,这句话实现了[field:description function="cn_substr(@me,字符数)"/]这一功能。因为这一语句确实有利于页面布局,因此我们在实验中没有修改。

在/dede/文件下的edit(article_edit.php)页面,有一句代码是:“$description = cn_substrR($description,250); ”,这句话中出现了一个熟悉的字符数“250”,这就是系统设置的文章摘要字符数的上限值。 如果是gbk编码则显示出来的就是125个字。如果是utf-8编码则是81个字。显然,我们要突破文章摘要字符数上限,肯定得拿它开刀了。

因此,这里修改“250”为其他值即可,例如“500”。这里不推荐设置得过高,一个是在列表页没必要展示太多内容(展示太多内容不如直接用body了),另一个是避免数据库产生冗余。

完成上面的修改还不够,还需要修改article_description_main.php

在article_description_main.php页面,找到“if($dsize>250) $dsize = 250;”语句,这里限制了在后台自动获取摘要的字符数。把这里的“250”修改为“500”即可,也就是和之前修改的字符数一致即可。(如果你确认你的每一条文章都是手动添加,手动完成摘要获取就不需要修改这个文件了。自动摘要获取主要还是给大量文章和采集准备的。)

最后,登录后台,在系统-系统基本参数-其它选项中,自动摘要长度,改成500即可,也就是和之前修改的字符数一致即可。

按照以上操作,如果你还发现摘要文字还是250字封顶!再多还是不显示,那么,你需要还得修改一下数据库,登录后台,执行SQL语句:

alter table `dede_archives` change `description` `description` varchar( 500 )

500代表我们设置存放摘要的这个表可以保存的字符串长度为500个字符,GBK编码下是汉字500个!执行完毕,再生成试试!这样才真正的突破了250个摘要文字的限制!

完成上述修改后,我们再到频道列表页,通过标签调用即可,示例标签如下:

{dede:list typeid='' row='5' titlelen='100' orderby='new' pagesize='5'}
<h3><a href='[field:arcurl/]'>[field:title/]</a></h3>
<p>[field:description function='cn_substr(@me,500)'/]...</p>
{/dede:list}

通过以上方式,我们就实现了调用的文章摘要字符为500字符,完全突破了文章摘要250字符的系统限制,为网页布局提供了更加广阔的空间。

方法二:

第一步、进数据库,找到表 dede_archives 下的字段 description字段,点更改,长度250改为你想要的数字,另外如果需要把自动摘要改为手动摘要的话,就把null改为是,默认值改为null。

第二步、修改织梦系统文件。在dede文件夹目录下,找到article_eidt.php文件

找到其中的:

$description = cn_substrR($description,250);

将250改为你想要的数字,比如:500。

注意,这里的250不是250个字,而是250字符。

有些情况需要修改一下/dede/templets/文件夹里,article_add.htm和article_edit.htm,找到其中的:

<textarea name="description" rows="5" id="description" style="width:80%;height:50px">

把height:50px改为height:100px乃至更多。

第三步、进后台,系统---系统基本参数---其它设置---自动摘要的长度(例如写成:500)

适用即可,不要设置太大,避免增加数据库冗余。

方法三:

在/dede/文件下,找到archives_add.php中的:

$description = cn_substrR($description,$cfg_auot_description);

archives_edit.php 中的:

$description = cn_substrR($description,250);

这两个语句是用来定义摘要的,$cfg_auot_description 是自动摘要长度的变量,250是长度的最大值。

可是为什么一定要给摘要规定一个长度呢?所以这个方法就是直接将摘要长度去掉,将代码改为:

在/dede/文件下,archives_add.php 代码如下:

$description = $description;

在/dede/文件下,archives_edit.php 代码如下:

$description = $description;

完全可以行得通,如果不想要文章摘要,可以在把 article_article.html 中的一下字符删除掉,代码如下:

{dede:field.description runphp='yes'}
if(@me<>'' )@me = '
'.@me.'
';
{/dede:field.description}

至此,这个摘要长度的限制就算彻底解决了。

3、网页调用文章摘要的方法

在Dedecms中,在列表页调用文章摘要的方法(能够经过infolen或description相关标签调用)主要有:

1:[field:info /]

2:[field:description /]

3:[field:info function="cn_substr(@me,字符数)"/]

4:[field:description function="cn_substr(@me,字符数)"/]

第1、2种方法是直接调用文章摘要,在调用的字数问题上,当使用[field:info /]时,可以在{dede:arclist infolen=' ' }{/dede:arclist}中,设置调用摘要的字符数(最高可设置为系统设置的250);如果使用[field:description /],则直接使用后台设置的摘要字符上限。显然,这两种方式都很被动,灵活性太差。

第3、4种方法通过function函数实现了对文章摘要显示字符的灵活调整。当然,在没有修改文章摘要内容字符上限时,这4个方法的差异并不大。但是,下面我们来说如何修改这一上限值,就可以体现出[field:description function="cn_substr(@me,字符数)"/]这一方式的重要性。

马海祥博客点评:

文章摘要被设置了字数上限的主要目的是减少数据库的冗余,保证网站良好的性能。因而,假如对文章简介摘要内容不设置上限,显然不合理;但是假如能够自如的控制这一上限,那么将对网页内容布局带来积极作用。在网页设计过程中,常常需求在频道列表页面调用到文章摘要,假如能够有效控制文章摘要的字数,那么就能够使得页面规划很灵敏。

本文发布于马海祥博客文章,如想转载,请注明原文网址摘自于https://www.mahaixiang.cn/CMS/2790.html,注明出处;否则,禁止转载;谢谢配合!

相关标签搜索: 织梦   dedecms   文章标题   简介摘要   方法教程  

上一篇:dedeCMS留言板注入漏洞的修复方法
下一篇:织梦添加文章时出错显示Duplicate entry 'xxx' for key 'PRIMARY'的解决方法

您可能还会对以下这些文章感兴趣!

  • dedecms cookies泄漏导致SQL漏洞的修复方法

    最近,公司做的新网站都是用织梦系统搭建的,虽说织梦系统是很好用,但织梦程序的最头疼的就是安全问题了,今天,公司的网站就收到阿里云后台的信息提示网站存在一些漏洞需要及时处理。漏洞提示:dedecms cookies泄漏导致SQL漏洞;漏洞描述是:dedecms的文章发表表单中泄漏了用于防御CSRF的核心cookie,同时在其他核心支付系统也使用了同样的cookie进行验证,黑客可利用泄漏的cookie通过后台验证,进行后台注入。如下图所示:……【查看全文

    阅读:83关键词: dedecms   cookies   漏洞修复   网站漏洞   修复方法   日期:2019-03-21
  • 防止dedeCMS织梦网站被黑挂木马的一些方法

    Dedecms后台系统程序升级到5.7 sp2版本之后,依旧存在很多漏洞。截止到今天,依旧有大约3万个使用dedecms管理系统程序开发的网站被黑客挂马。目前,dedecms官网没有给予任何答复以及解决方案。另外,对于国内公认最具权威的360网站安全监测……【查看全文

    阅读:562关键词: dedecm   织梦   挂木马   日期:2018-11-26
  • DedeCMS <=5.7 SP2 file_class.php 任意文件上传漏洞

    最近有个博友咨询我说,他用织梦DedeCMS系统做的一个新站,上传到服务器后,便提示有严重漏洞危险,问该如何解决?其实这个漏洞很好解决的,网上也早已公布的修复方法,在此,我便借助马海祥博客的平台将修复方法分享如下:漏洞名称:file_class.php 任意文件上传漏洞;漏洞公告:dedecms v5.7 sp2 任意文件上传漏洞 (CVE-2019-8362)……【查看全文

    阅读:147关键词: dedecms   网站漏洞   日期:2019-05-06
  • 如何在Linux系统环境下安装DedeCMS站点及安全设置

    近年来,越来越多的企业看到了Linux的这些强大的功能,利用Linux担任全方位的网络服务器。Linux在它的追捧者眼里是一个近乎完美的操作系统,它具有运行稳定、功能强大、获取方便等优点,随着Linux服务器应用范围越来越广泛,国内很多站长也开始使用它作为自己的Web服务器,所……【查看全文

    阅读:3730关键词: linux系统   dedeCMS   日期:2017-02-14
  • dedecms v5.7 CSRF保护措施绕过漏洞

    今日,在检查网站及服务器安全问题的时候,发现阿里云后台一直提示有一个“dedecms v5.7 CSRF保护措施绕过漏洞”影响网站安全,需要紧急修复,漏洞名称:dedecms v5.7 CSRF保护措施绕过漏洞;漏洞描述:dedecms最新版(20171228更新),增加了部分函数对CSRF漏洞的检查,然而对函数输出校验不当导致可以传入恶意数组绕过CSRF防御。……【查看全文

    阅读:230关键词: dedecms   保护措施   网站漏洞   日期:2019-04-08
  • DedeCMS后台文件任意上传漏洞media_add.php的修复方法

    最近,公司的网站迁移到阿里云之后,一直提示有一个漏洞需要紧急修复,漏洞名称:dedecms后台文件任意上传漏洞;漏洞描述:dedecms早期版本后台存在大量的富文本编辑器,该控件提供了一些文件上传接口,同时dedecms对上传文件的后缀类型未进行严格的限制,这导致了黑客可以上传WEBSHELL,获取网站后台权限。……【查看全文

    阅读:148关键词: dedecms   后台漏洞   修复方法   网站漏洞   日期:2019-06-29
  • 安全正确转移网站data目录文件的具体方法步骤

    说到网站安全的问题,那就不得不先说下data目录文件了,data目录是系统缓存和配置文件的目录,一旦此目录文件被攻击后,那对网站可能就是致命的了,一般来说,data目录都有可以读写的权限,只要是能够写入的目录都可能存在安全隐患,很多站长甚至给予这个目录可执行的权……【查看全文

    阅读:4983关键词: data目录   转移data文件   data转移方法   日期:2013-07-19
  • 织梦(dedecms)后台登录验证码不显示或不正常的解决方法

    随着互联网的快速发展,站长已经成为了互联网中的新兴人群,而其中建站使用的cms以织梦居多,伴随着人数的增多,在使用织梦cms中遇到的问题也越来越多,其中最棘手的问题莫过于验证码无法显示而导致无法登陆后台,如果连后台都登陆不了,何谈操作,这也成为了许多新手站……【查看全文

    阅读:13246关键词: 织梦   dedecms   验证码   日期:2016-09-27
  • 织梦系统(dedecms)文章样式属性的调用标签汇总

    在《织梦(dedecms)标签调用代码大全》一文中,我已经跟大家介绍了一些我们常用的织梦模板调用标签,本文再跟大家介绍一些织梦文章样式属性的调用标签,合理的利用文章调用标签,不禁可以加强页面的用户体验,也可以使网站的结构布局更加合理,充分的展示我们想要推广的文章,……【查看全文

    阅读:9662关键词: 织梦   织梦系统   dedecms   文章样式   文章属性   调用标签   日期:2014-09-05
  • 如何解决点击次数影响网页加载速度的问题

    对于一个专门做博客的站长来说,在文章页中,什么js效果都可以忽略,但是有一个js文件是必须要留下的,那就是文章点击次数的js文件,因为这样你就可以一目了然的看到你这篇文章受欢迎的程度了。但是最近有个朋友反映说,因为自己的博客空间买的是虚拟空间,运行加载的比……【查看全文

    阅读:1188关键词: 点击次数   网页加载速度   如何解决问题   日期:2013-02-07
  • 织梦dedecms栏目添加并调用自定义缩略图功能

    我们用织梦dedecms后台管理系统制作网站的时候,点击进入每个栏目时,都会有“关于我们”,“新闻中心”,“产品展示”等提示性的图片,单独调用这些图片比较麻烦,对此,我们可以修改程序,实现每个栏目都有上传栏目缩略图的功能,就方便多了。网上有很多关于dedecms添……【查看全文

    阅读:3098关键词: 织梦   dedecms   缩略图   日期:2017-11-08
  • 修改网站后台管理员用户名admin的具体操作方法汇总

    这两天,群里有很多的博友反馈说,自己的网站被挂马,大家也一起吐槽各种被黑、被挂马的现象及解决方法。其中有几个博友说自己网站模板代码被改,是因为网站后台管理员账号被破解了,黑客就直接登录后台随意的改起来了。询问大家有什么方法能把网站后台的admin账号修改……【查看全文

    阅读:21993关键词: 修改管理员用   网站后台   admin   日期:2013-07-21
  • 迅睿CMS系统栏目页面分页样式错位的解决方法

    最近,开始使用迅睿CMS系统来搭建网站,在套用列表页的时候,分页样式总是出现错位的问题,对于这种情况,我们该如何解决呢?对于很多初次使用迅睿CMS系统的的朋友来说,可能都会遇到过这问题吧,下面我就借助马海祥博客的平台与大家分享一下具体的解决方法:……【查看全文

    阅读:5关键词: 迅睿CMS   分页样式   日期:2022-05-15
  • 织梦模板(dedecms)功能模块模板路径对应表

    织梦内容管理系统(DedeCms)是国内知名PHP开源网站管理系统,也是目前国内使用用户最多的PHP类CMS系统,DedeCms免费版的主要目标用户锁定在个人站长,功能主要专注于个人网站或中小型门户的构建,当然也不乏有企业用户在使用本系统。织梦内容管理系统(DedeCms)基于……【查看全文

    阅读:6308关键词: 织梦模板   dedecms   织梦功能   织梦模块   模板路径   日期:2014-11-17
  • dedeCMS模版SQL注入漏洞和SQL注入漏洞的修复方法

    今天,在检查阿里云服务器安全问题的时候,发现服务器上的织梦网站有2个漏洞提示,分别为:dedecms模版SQL注入漏洞;dedecms SQL注入漏洞。该漏洞都是来自织梦的/member/文件夹中的soft_add.php和album_add.php文件的不安全,导致SQL注入的发生。在阿里云的漏洞描述详细区域下方将有收到影响的文件以及服务器,可以使用阿里云建议的修复方案。……【查看全文

    阅读:554关键词: dedecms   模版漏洞   修复方法   漏洞修复   日期:2019-02-19
  • 取消网站文件目录脚本执行权限的方法步骤

    对于网站安全维护的过程中,目录的执行权限是非常敏感的,一般来说,可以写入的目录是不能够拥有脚本的执行权限的,像DedeCMS系统,可写入的有两个目录,既:data文件和uploads文件,data目录主要是基本配置文件和缓存数据,uploads则是附件上传保存的目录,针对不同服务器环……【查看全文

    阅读:4319关键词: 网站文件   目录脚本   执行权限   网站目录   日期:2014-12-06
  • 如何合并栏目列表分页URL首页链接index.html与第一页的重复

    最近随着百度对原创文章的支持调整,发现自己负责的几个站首页的排名都很好,可就是栏目页的排名不是很理想,仔细看了下,从seo的角度来说,发现栏目首页的代码出现重复现象,分散了栏目页的权重。而搜索引擎优化对于大部分网站的重要性也不言而喻,那么我们要怎么更好……【查看全文

    阅读:1712关键词: URL首页链接   index.html   栏目列表分页   合并栏目URL   日期:2012-10-06
  • dedeCMS任意文件上传漏洞select_soft_post.php的修复方法

    对于大多数站长来说,使用织梦程序搭建的网站最头疼的问题就是安全问题了,近期博主也多次收到阿里云后台的信息提示网站存在一些漏洞需要及时处理。进入阿里云后台,我查看了漏洞提示:dedecms任意文件上传漏洞;原因是:dedecms变量覆盖漏洞导致任意文件上传,对于该漏洞,解决方法也比较简单,便找到了修复方法,在此,我便借助马海祥博客的平台将修复方法分享如下……【查看全文

    阅读:455关键词: dedecms   文件漏洞   修复方法   网站漏洞   日期:2019-07-09
  • 织梦DedeCms文章标题和简介摘要字数长度限制修改的方法教程

    我们在使用织梦CMS系统建站的时候,网站前端在调用文章的过程中,经常会碰到标题和文章摘要会自动截取一定量的字数,而并非全部调用出来,无论怎么修改调用代码都不行,尤其是使用UTF8版本的织梦系统,调用的文字更少了。其实,这主要是因为Dedecms织梦系统默认的文章标题的最大长度为60字节,使用GBK版本的,也就是30个汉字;使用UTF8版本的,也就是10个汉字;如果文章标题超过60字节将会自动截断,导致标题显示不全,而现在文章标题30个汉字是……【查看全文

    阅读:209关键词: 织梦   dedecms   文章标题   简介摘要   方法教程   日期:2019-12-11
  • 织梦dedecms列表页实现无限下拉加载效果的方法技巧

    最近帮人制作网站,发现资讯类的网站,在文章列表页展示信息的时候,使用“加载更多”、“无限下拉”效果的特别多,今天刚好在dedecms(织梦系统)上做了一个测试,实现了此效果,所以,就借助马海祥博客的平台,拿出来跟大家免费分享一下,因为我觉得技术这东西,如……【查看全文

    阅读:828关键词: 织梦   dedecm   列表页   无限下拉   无限加载   方法技巧   日期:2017-04-01
↓ 点击查看更多 ↓

互联网更多>>

SEO优化 更多>>

九大排序算法的实现方法及算法分析 如何做好企业电商网站的SEO优化