今天遇到一个奇葩的问题,那就是在织梦dedecms针对 5.7 版本这个开源的程序中。文章摘要被设置了字数上限为 250 字符,在我们编辑文章时候,往往需要在频道列表页面调用到文章摘要,如果可以有效控V K i G & j v { q制文章摘C 8 u U c ! U ^ {要的字数,那么就可以使得页面布局很灵活。当然了也是有利于 SEO 优化了。
在Dedecms中,在列表页调用文章摘要的方法主要有:
1:[field:info /]
2:[field:description /]
3:} a o ? L 9[field:info function="cn_substr(@me,字符数)"/]
4:[field:description function="cn_substr(@me,字符数)"/]
方法一:
第一步 进数据库 找到表 dede_archives 下的字{ & = / # s $ E $段 description 点更改,字段类型选择blob(有些说是改成TEXT,但我试了一下是不行的)
第二步 在dede目录下article_eid. f p f o R Nt.php里语名$description = cn_substr($description,250);这里的250不是250个字,而是250字符,所以是不能使用到250个这的,在250后面加多个0就可以了.我试过能行的
第三步 进后台,系统---系统基本参数---其它设置---自动摘要的长度(例如写成:250000)(其实这个地方也可以不该的,DEDE已经默认是0-250,这里在经过一二步的更改之后已经不起作用了,随便什么之都行,“0”除外)
适用即可,不要设置太大,避免增V ( T i } n j K Y加数据库冗余
-----------------------------@ O ; u ? #------------------------------------------------------F / H h R M h 1 `-----------T J i-----------------------------------$ @ *--------------
方法二:
archives_add.ph( ! o = ~ 1 Dp 中的:$description = cn_substrR($description,$cfg_auot_description); archives_edit.php 中S d H } *的: $description = c7 f t Z I / x bn_substrR($description,250);
这两个语句是用来定义摘要的,$cfg_auot_description是自动摘要长度的变量,250是长度的y @ q J C最大值
可是为什么一定要给摘要规定一. ( h z / b 6个长度呢?
所g z ` B E o 5以这个方法就是直接将摘要长度去掉,将代码改为:
archives_add.php $description = $description;
archives_edit.php $d/ d + ] D Vescription =M M { o p $description;