POST TIME:2017-10-25 00:22
用dedecms做企业站时,通常在首页会调用公司简介、联系我们之类的单页栏目的内容,如下图,本文就主要讲解一下首页调用单页栏目的内容的方法。(除此之外,再讲解一下类似的首页调用文章内容的方法)
1、首页调用单页栏目内容
首先你要明白什么是单页栏目,单页栏目常见的如企业站中的公司简介、联系我们这样的栏目,你在导航栏中点击对应栏目时,打开的是一个单页,而不是文章列表,如下图就是公司简介的单页栏目页面。
而我们要做的就是在首页中,调用出单页栏目的内容。
2、首页调用单页栏目内容具体步骤
(1)以公司简介栏目为例,网站首页会有显示公司简介的板块,在对应板块位置,输入如下代码:
{dede:sql sql='Select content from dede_arctype where id=2'}
[field:content/]
{/dede:sql}
说明:其中的id=’2’是指定栏目的id ,查看栏目id的方法,如下图,在栏目名称后就是栏目id ,输入代码后,保存,刷新网站,这时首页对应板块就调用出栏目内容了。
本代码的特点:可以调用出指定栏目的全部内容,包括内容中的图片、视频等元素,并且可以保持内容原来的文章格式。
(2)上面代码是把栏目所有内容都调用出来,如果我们只调用部分内容,可以用下面代码:
{dede:sql sql='Select content from dede_arctype where id=2' }
[field:content function='cn_substr(html2text(@me),550)'/]...
{/dede:sql}
说明:代码相对第一种代码,多了 function='cn_substr(html2text(@me),550)' ,数字550是限制调用出来的字数。
特点:可以指定调用内容的字数,缺点只能调用文字,文章内容中的图片等其他元素不能调用,并且调用出的内容没有文章段落格式。样式如下图:
3、首页调用文章内容
(1)刚才是首页调用单页栏目的内容,在首页也可以调用文章列表栏目的文章内容。代码如下:
{dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
[field:body /]
{/dede:sql}
说明:上面代码typeid=2,指的调用id=2的栏目的最新的一篇文章。如果我们要调用指定的一篇文章的内容,可以把上面的typeid改成aid,之后直接调用文章的id就可以了。
特点:本代码可以调用文章的全部内容,并保持文章格式。
(2)上面是调用指定栏目的最新一篇文章,调用具体一篇文章的内容,可以用下面代码:
{dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
[field:body /]
{/dede:sql}
说明:aid=2 ,指调用文章id=2的文章的内容,查看文章id方法很简单,进入具体栏目,看到文章标题左侧的数字,就是文章id,如下图:
特点:本代码调用了指定的具体一篇文章,也是调用全部内容,保持文章格式。
(3)上面两种方法都是调用文章的全部内容,如果只调用部分内容,代码如下:
{dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
[field:body function="cn_substr(@me,120)" /]
{/dede:sql}
说明:本代码和上面调用部分栏目内容是相同的,都是添加了function="cn_substr(@me,120)"代码来限制显示内容的字数。
特点:这个调用部分文章的代码,可以保持文章格式,并能调用文章中的图片、视频等其他元素,这一点和调用部分单页栏目内容不同,请注意。
总结:上面就是首页调用单页栏目内容和首页调用文章内容的方法,相比而言,首页调用文章内容时,不管调用全部内容,还是部分内容都可以保持文章的内容格式,并能调用文中的图片、视频等其他元素。
而调用部分单页栏目时,只能调用文字,不能调用图片等其他元素,并且也会丢失文章格式。
所以建议,如果需要在首页调用单独模块,可以考虑写成一篇文章,调用到首页,而尽量不要用单页栏目。