dede文章摘要字数的设置方法

本文转自:http://blog.csdn.net/yxwmzouzou/article/details/17491991

在织梦系统中(针对5.7版本),文章摘要(可以通过以下四种相关标签调用)被设置了字数上限为250字符,在网页设计过程中,往往需要在频道列表页面调用到文章摘要,如果可以有效控制文章摘要的字数,那么就可以使得页面布局很灵活。

在Dedecms中,在列表页调用文章摘要的方法主要有:

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,字符数)"/]这一方式的重要性。

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

/dede/archives_add.php
/dede/archives_edit.php
/dede/article_add.php
/dede/article_edit.php
/dede/article_description_main.php

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

在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即可,也就是和之前修改的字符数一致即可。

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

{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字符的系统限制,为网页布局提供了更加广阔的空间。

网上好多这样的文章,但是最终你会发现摘要文字还是250字封顶!再多还是不显示,搞了一个下午,什么原因呢,最终我发现还得修改数据库,登录后台,执行SQL语句:alter table `dede_archives` change `description` `description` varchar( 1000 ),

1000代表我们设置存放摘要的这个表可以保存的字符串长度为1000个字符,合汉字500个!执行完毕,在生成试试!

这样才真正的突破了250个摘要文字的限制!

希望能帮到大家

时间: 2024-12-13 16:46:44

dede文章摘要字数的设置方法的相关文章

discuz x3.3标题的最少字数限制设置方法

Discuz帖子标题默认字数最多是80个字节,却没有最少的字节限制.最近看到很多站长想限制一下帖子标题最少字数,不管是利于seo,还是禁止灌水,都有必要.为此把设置方法发上来分享. 1.找到并打开static/js/forum_post.js文件: 2.找到如下代码: } else if(mb_strlen(theform.subject.value) > 80) { showError('您的标题超过 80 个字符的限制'); return false; } 3.在下方添加如下代码: else

dede摘要长度,dedecms摘要限制,dedecms摘要字数

dede摘要长度,dedecms摘要限制,dedecms摘要字数 如果可以有效控制文章摘要的字数,那么就可以使得页面布局很灵活. 在Dedecms中,在列表页调用文章摘要的方法主要有: 1:[field:info /] 2:[field:description /] 3:[field:info function="cn_substr(@me,字符数)"/] 4:[field:description function="cn_substr(@me,字符数)"/] 方法

wordpress调用文章摘要,若无摘要则自动截取文章内容字数做为摘要

以下是调用指定分类文章列表的一个方法,作者如果有填写文章摘要则直接调用摘要:如果文章摘要忘记写了则自动截取文章内容字数做为摘要.这个方法也适用于调用description标签 <ul> <?php $args=array( 'cat' => 1, // 分类ID 'posts_per_page' => 10, // 显示篇数 ); query_posts($args); if(have_posts()) : while (have_posts()) : the_post();

dede编辑文章不更新时间的方法

在修改文章的时候,发现织梦DEDECMS5.7这个版本存在一个问题,修改文章的同时也修改了文章的发布时间,这个 功能可能有些人比较需要,但同时也有些站长朋友又不需要,因为我们编辑某个文章的时候,发现编辑之后网站 的排序都变了.所以上网查了一下资料,也总结了一套修改文章不更新时间的方法: 下面给出修改dedecms5.7修改文章内容的同时不修改发表日期时间的方法: 打开: /dede/templets/article_edit.htm 365行左右: 把: $nowtime = GetDateTi

WordPress批量修改文章内容、URL链接、文章摘要

通过SQL语句来批量修改wordpress博客内容,文章中所有语句都使用默认的wp_表前缀,如果您的数据表前缀不是wp_则需要在语句中作相应更改. 方法/步骤 批量修改文章内容 如果您想替换之前写过的所有文章中的某些内容,如更换博客的名称.更换博客的网址.更换文章配图的链接等,您可以使用以下SQL语句: UPDATE wp_postsSET post_content = REPLACE( post_content,'旧的博客名', '新的博客名' ); 该语句的功能是将所有文章中的“旧的博客名”

如何使用css和jquery控制文章标题字数?

如何使用css控制文章标题字数? 最佳答案 控制文章标题字数,不是动态网页的专利,如果静态页面使用CSS样式,也可以实现相同的效果! 看这个例子,你们可以复制到记事本保存为HTML文件看效果! <html> <title>css控制字数</title> <head> <style type="text/css"> .dd { border: solid 1px gray; width:180px; overflow: hidd

Wish新手必看 Wish Tags设置方法

Wish Tags的设置方法: 1.Tag是给Wish抓取你的产品信息用的,用户很少用Tag来搜索自己想要的商品.所以,tag要准确,不要一件衣服又说 Long sleeves又说Short sleeves.这样Wish就不好匹配,从而产品权重下降. 2.Tag的顺序一般来说是一级分类.二级分类.三级分类这样.用淘宝做测试,可以看到输入连衣裙 短袖 女装和输入女装 短袖 连衣裙,前出现的商品会一样,(付费用户在哪都享有特权)但是鼠标往下拉一点点就开始不一样了,而且两边衣服重复度也较低. 由于大部

VMWare中Linux虚拟机设置静态IP上网的设置方法

VMWare中Linux虚拟机设置静态IP上网的设置方法 标签: vmwareLinux虚拟机securecrt静态IP上网 2016-05-18 02:30 702人阅读 评论(0) 收藏 举报  分类: Linux 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 现在大部分人的家庭网络环境都是通过无线路由器为家里的电脑和手机提供网络. 在使用VMware安装Linux之后,默认使用的是DHCP连接网络. 但是如果使用类似 SecureCRT以SSH方式连接到虚拟机上的

linux下通过iptables只允许指定ip地址访问指定端口的设置方法

这篇文章主要介绍了linux下通过iptables只允许指定ip地址访问指定端口的设置方法,需要的朋友可以参考下. 首先,清除所有预设置 iptables -F#清除预设表filter中的所有规则链的规则 iptables -X#清除预设表filter中使用者自定链中的规则 其次,设置只允许指定ip地址访问指定端口 其次,设置只允许指定ip地址访问指定端口 iptables -A INPUT -s xxx.xxx.xxx.xxx -p tcp --dport 22 -j ACCEPT iptab