织梦系统网站内容更改(Dedecms如何修改这一上限值限值页面调用文章摘要的方法?)
优采云 发布时间: 2021-11-20 05:17织梦系统网站内容更改(Dedecms如何修改这一上限值限值页面调用文章摘要的方法?)
在 Dedecms 系统中,文章 摘要(可以通过 infolen 或 description 相关标签调用)设置为最大 250 个字符。设置上限的主要目的是减少数据库的冗余,保证网站良好的性能。因此,对介绍的内容不设上限显然是不合理的,但如果可以自由控制这个上限,将对网页内容的布局产生积极的影响。在网页设计过程中,经常需要调用频道列表页面的文章汇总。如果文章摘要中的字数能够得到有效控制,页面布局就可以变得非常灵活。
在Dedecms中,调用列表页文章汇总的主要方法如下:
1、[field:info /]
2、[field:description /]
3、[field:info function="cn_substr(@me,字符数)"/]
4、[field:description function="cn_substr(@me,字符数)"/]
1、的第二种方法是直接调用文章的summary。在调用的单词数方面,使用[field:info /]时,可以使用{dede:arclist infolen=''}{/dede :arclist},设置调用摘要中的字符数(向上到系统设置的250);如果使用[field:description /],直接使用后台设置的摘要字符上限。显然,这两种方法都很被动,灵活性大太穷了。
第四种方法3、通过函数函数实现对文章摘要显示字符的灵活调整。当然,在不修改文章抽象内容字符上限的情况下,这四种方法区别不大。不过下面这个上限怎么修改,可以体现[field:description function="cn_substr(@me,number of characters)"/]的重要性。
在dedecms中,与文章的摘要相关的php文件主要有:
/dede/archives_add.php
/dede/archives_edit.php
/dede/article_add.php
/dede/article_edit.php
/dede/article_description_main.php
在添加页面,有一句:“$description = cn_substrR($description,$cfg_auot_description);”,这句话实现了函数[field:description function=”cn_substr(@me,number of characters)”/] 。因为这个语句确实有利于页面布局,所以我们在实验中没有修改。
在编辑页面,有一句话:“$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'}
][field:title/]
<p>[field:description function='cn_substr(@me,500)'/]...
{/dede:list}</p>
通过上述方法,我们实现了被调用的文章抽象字符为500个字符,彻底突破了文章抽象250个字符的系统限制,为网页布局提供了更广阔的空间。