欢迎访问织梦学习网,加群!!!!!!!!!!!!!!!!
当前位置:主页 > 二次开发 >

织梦(dedecms)单页制作教程

2019-05-12 dedecms二次开发 织梦,dedecms,单页,制作教程,点评,我们,知道,
点评:我们知道,单页内容的模板调用标签是 {dede:field.content/} ,经过试验,在首页使用,由于这种方法有局限性所以我们还可以使用SQL进行调用,这样以来灵活性大大提高了,而且可以调用任意一个栏目ID的单页内容    
代码如下:
{dede:field.content/} 
这个标签系统只支持在栏目模板里调用,不支持在内容模板里调用。如果想让内容模板也支持它,其实也很简单。只需在核心目录即 include/ 里的 archives.class.php中加入一行代码就OK了。 
如下:$this->Fields['content']=$this->TypeLink->TypeInfos['content']; //第86行加入此代码 
如何将已经做成单页的栏目内容调用到首页来。 

常用的需要调到首页来的单页内容,比如公司简介、联系我们等内容,我们在首页可能都要进行展现。通过常规的方式,包括查阅dede官方论坛资料,都找不到比较合适的答案。今天我们就提供两种方式进行调用。 
一、我们知道,单页内容的模板调用标签是 {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"表名要根据你安装系统时的表名来填,不然也调用不出来 
但是有时候我们不需要把一个栏目的所有文字都显示出来,所有需要截取一部分在首页,那么该如何实现呢,看代码,还是用sql,把调用的数据截取。 

比如:Select content,substring(content,1,280) as content from dede_arctype where id=1 
这句话是说把ID1栏目的内容的1-280个字符截取出来。