织梦{dede:field.content/}泛解析

2017-04-13 21:00:21 dedecms

  

织梦

建站做单页的时候经常使用{dede:field.content/}标签,

笔记部落

对这个标签做详细解析:

  这个标签系统只支持在栏目模板里调用,不支持在内容模板里调用。如果想让内容模板也支持它,其实也很简单。只需在核心目录即 include/ 里的 archives.class.php中加入一行代码就OK了。   复制代码如下:$this->Fields['content']=$this->TypeLink->TypeInfos['content']; //第86行加入此代码   如何将已经做成单页的栏目内容调用到主页来。   常用的需要调到主页来的单页内容,比如公司简介、联系我们等内容,我们在主页可能都要进行展现。通过常规的方式,包括查阅dede官方论坛资料,都找不到比较合适的答案。今天我们就提供两种方式进行调用。   

DEDECMS

模板   一、我们知道,单页内容的模板调用标签是 {dede:field.content/} ,经过试验,在主页使用   {dede:channelartlist }   {dede:field.content/}   {/dede:channelartlist }   进行调用,即可顺利的调出相关的数据。   但是出现问题,这种调用只能用于只有一个单页的情况,如果系统中含有两个或者多个以上的单页,该调用会将所有的单页内容堆叠显示出来。即使加type的ID进行限定也没有什么作用。所以这种方法并不太适合   二、我们还可以使用SQL进行调用,这样以来灵活性大大提高了,而且可以调用任意一个栏目ID的单页内容。   {dede:sql sql='Select content from dede_arctype where id=1'}   [field:content/]   {/dede:sql}   想调用那个栏目,只需要修改栏目的ID 就可以了;但需要注意一点的是"dede_arctype"表名要根据你安装系统时的表名来填,不然也调用不出来 DEDECMS模板   但是有时候我们不需要把一个栏目的所有文字都显示出来,所有需要截取一部分在主页,那么该如何实现呢,看代码,还是用sql,把调用的数据截取。 内容来自   比如:Select content,substring(content,1,300) as content from dede_arctype where id=1   DEDECMS模板   这句话是说把ID1栏目的内容的1-300截取出来。   笔记部落总结的详细吧。