在dedecms中,要调用顶级栏目频道及其列表,可以使用channelartlist
标签。具体代码如下:,,“html,{dede:channelartlist type='top'},[field:typename/],{/dede:channelartlist},
“
在DedeCMS中,{dede:channelartlist}
标签用于获取当前频道的下级栏目内容列表,通过嵌套使用{dede:arclist}
标签,可以同时调用顶级栏目及其下级栏目的文章,如果需要再嵌套下下级栏目,则需要进行二次开发。
表格展示:{dede:channelartlist}
和{dede:arclist}
标签的使用方法
标签类型 | 功能描述 | 示例代码 |
{dede:channelartlist} | 获取当前频道的下级栏目内容列表 | {dede:channelartlist type='top' id='1'} // 获取ID为1的顶级栏目下的子栏目列表 |
{dede:arclist} | 获取文章列表,可与{dede:channelartlist} 嵌套使用 | {dede:channelartlist}{dede:arclist typeid='son'} // 嵌套获取子栏目文章列表 |
具体应用场景
1. 调用顶级栏目及其下级栏目的文章列表
要同时显示顶级栏目及其下级栏目的文章列表,可以嵌套使用{dede:channelartlist}
和{dede:arclist}
标签。
{dede:channelartlist type='top' id='1'} <li>[field:typename function="GetTopTypeName(@me)" /]</li> {dede:arclist typeid='son'} <li>[field:title function="htmlspecialchars(@me)" /]</li> {/dede:arclist}{/dede:channelartlist}
上述代码将显示ID为1的顶级栏目及其下级栏目的文章列表。
2. 调用多个顶级栏目的内容
如果只想调用几个特定的顶级栏目,可以通过设置typeid
属性来实现。
{dede:channelartlist typeid='1,2,3'} <li>[field:typename function="GetTopTypeName(@me)" /]</li> {dede:arclist typeid='son'} <li>[field:title function="htmlspecialchars(@me)" /]</li> {/dede:arclist}{/dede:channelartlist}
这段代码将只显示ID为1、2、3的顶级栏目及其下级栏目的文章列表。
3. 隐藏某个频道
如果不希望调用某个频道的内容,可以设置该频道的属性为隐藏,这样,即使使用{dede:channelartlist}
标签,也不会显示该频道的内容。
相关问答FAQs
问题1:如何调用顶级栏目及其下级栏目的文章列表?
答:要调用顶级栏目及其下级栏目的文章列表,可以使用{dede:channelartlist}
标签嵌套{dede:arclist}
标签,示例代码如下:
{dede:channelartlist type='top' id='1'} <li>[field:typename function="GetTopTypeName(@me)" /]</li> {dede:arclist typeid='son'} <li>[field:title function="htmlspecialchars(@me)" /]</li> {/dede:arclist}{/dede:channelartlist}
问题2:如何只调用特定的顶级栏目内容?
答:如果只想调用特定的顶级栏目内容,可以在{dede:channelartlist}
标签中设置typeid
属性,指定要显示的顶级栏目ID,示例代码如下:
{dede:channelartlist typeid='1,2,3'} <li>[field:typename function="GetTopTypeName(@me)" /]</li> {dede:arclist typeid='son'} <li>[field:title function="htmlspecialchars(@me)" /]</li> {/dede:arclist}{/dede:channelartlist}
标签参数 | 说明 | 示例 |
channeltype | 频道类型,可以是”top”表示顶级栏目,”son”表示子栏目,”all”表示所有栏目 | top |
id | 频道ID,用于指定具体的频道,当channeltype为”son”时使用 | 1 |
catid | 分类ID,用于指定分类下的顶级栏目,当channeltype为”top”时使用 | 0 |
catname | 分类名称,用于指定分类下的顶级栏目,当channeltype为”top”时使用 | |
num | 显示数量,默认为10,表示显示多少条列表信息 | 10 |
titlelen | 标题长度,默认为30,表示标题显示的字符长度 | 30 |
listtemp | 列表模板,自定义列表样式 | |
listorder | 列表排序,默认为”sortid DESC”,表示按ID降序排列 | sortid DESC |
listorderfield | 列表排序字段,默认为”sortid”,表示按ID排序 | sortid |
limitstart | 起始条数,默认为0,表示从第0条开始显示 | 0 |
limitnum | 每页显示数量,默认为10,表示每页显示多少条列表信息 | 10 |
templet | 列表模板,自定义列表样式 | |
arrlen | 子列表长度,默认为10,表示子列表显示多少条信息 | 10 |
listorder | 子列表排序,默认为”sortid DESC”,表示按ID降序排列 | sortid DESC |
listorderfield | 子列表排序字段,默认为”sortid”,表示按ID排序 | sortid |
cattypename | 分类名称,用于显示分类名称 | |
catpath | 分类路径,用于显示分类路径 | |
listurl | 列表URL,用于生成列表链接 |
示例用法:
<channelartlist channeltype="top" catid="0" num="10" titlelen="30" listtemp="list_article" listorder="sortid DESC"></channelartlist>
这个示例中,我们使用了channeltype="top"
来指定调用顶级栏目,catid="0"
表示调用所有顶级栏目,num="10"
表示显示10条列表信息,titlelen="30"
显示30个字符,listtemp="list_article"
表示使用自定义的list_article
模板来显示列表。