在织梦CMS(DedeCMS)中,调用一级栏目与二级栏目的方法相对简单,主要通过模板标签来实现,下面将详细介绍如何在首页循环调用一级栏目和二级栏目,并提供相关的代码示例、表格说明以及常见问题解答。
调用一级栏目与二级栏目的步骤
1. 调用一级栏目
要调用一级栏目,可以使用{dede:channelartlist typeid='top'}
标签,这个标签会遍历所有的顶级栏目,以下是具体的实现方法:
{dede:channelartlist typeid='top'} <li> <a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a> {dede:channel type='son' noself='yes'} <ul> <li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li> </ul> {/dede:channel} </li> {/dede:channelartlist}
2. 调用二级栏目
在调用一级栏目的同时,可以在每个一级栏目下调用其二级子栏目,使用{dede:channel type='son' noself='yes'}
标签可以实现这一点,以下是完整的代码示例:
{dede:channelartlist typeid='top'} <li> <a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a> <ul> {dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li> {/dede:channel} </ul> </li> {/dede:channelartlist}
3. 调用三级栏目(可选)
如果需要进一步调用三级栏目,可以在二级栏目的基础上再嵌套一层标签,以下是一个包含三级栏目的完整示例:
{dede:channelartlist typeid='top'} <li> <a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a> <ul> {dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]" target="_self">[field:typename/]</a> {dede:channel type='son' noself='yes'} <ul> <li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li> {/dede:channel} </ul> </li> {/dede:channel} </ul> </li> {/dede:channelartlist}
表格说明
标签名称 | 功能描述 | 参数 | 示例 |
{dede:channelartlist} | 遍历指定类型的所有栏目 | typeid ,row | {dede:channelartlist typeid='top'} |
{dede:field} | 输出当前字段的值 | name | {dede:field name='typename'/} |
{dede:channel} | 遍历子栏目 | type ,noself | {dede:channel type='son' noself='yes'} |
{dede:sql} | 执行自定义SQL查询并遍历结果 | sql | {dede:sql sql='Select * from dede_arctype where reid=~id~ ORDER BY id limit 0,20'} |
常见问题解答
问题1:如何在首页调用指定的一级栏目及其下的二级栏目?
答:可以通过指定typeid
参数来调用特定的一级栏目,并在其下调用二级栏目,要调用ID为3的一级栏目及其下的二级栏目,可以使用以下代码:
{dede:channelartlist typeid='3'} <li> <a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a> <ul> {dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li> {/dede:channel} </ul> </li> {/dede:channelartlist}
问题2:如何在调用栏目时实现当前页顶级栏目高亮显示?
答:可以通过添加currentstyle
参数来实现当前页顶级栏目的高亮显示,要使当前顶级栏目高亮显示并应用样式,可以使用以下代码:
{dede:channelartlist typeid='top' currentstyle="<li class='on'><a href='~typelink~'>~typename~</a></li>"} <li> <a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a> <ul> {dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li> {/dede:channel} </ul> </li> {/dede:channelartlist}
在上述代码中,currentstyle
参数定义了当前顶级栏目的样式,使其高亮显示。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1237466.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复