eyoucms channel 获取栏目列表标签

[基础用法]

名称:channel

功能:易优常用标记,可以循环嵌套标签。通常用于网站导航以获取站点栏目信息,方便网站会员分类浏览整站信息

语法:

{eyou:channel type='top' row='8' currentstyle='active'}

<li class="{$field.currentstyle}"><a href='{$field.typeurl}'>{$field.typename}</a> </li>

{/eyou:channel}

参数:

typeid='' 栏目ID,多个请用","分开

row='10' 返回文档列表总数(建议不要与limit属性同时存在,否则row无效)

limit='起始ID,记录数' (起始ID从0开始)表示限定的记录范围(如:limit='1,2' 表示从ID为1的记录开始,取2条记录)

titlelen='30' 栏目名称长度

type='son' 表示下级栏目

type='self' 表示同级栏目

type='top' 表示顶级栏目

type='sonself' 表示当前下级栏目以及同级栏目

type='first' 表示当前栏目ID的最顶级栏目下的所有层级栏目集合

currentstyle='' 应用样式class类名

offset=‘0’ 记录的起始ID,默认从0开始,假如指定2,将过滤最前面的2条,从第三条显示

name='' 数组类型的变量名(三级导航时才用到)

empty='' 没有数据时显示的文案

mod='' 每隔N行输出的内容

id='' 可以任意指定循环里的变量名替代field,假设id='field1',模板调用如:{$field.title} 变成 {$field1.title}

底层字段:

请查阅易优Cms官方提供的数据字典,找到表名 ey_arctype

(注:在没有指定typeid的情况下,type标记与模板的环境有关,如:模板生成到栏目一,那么type='son'就表示栏目一的所有子栏目)


-------------------------------效果展示--------------------------------

1,调用顶级栏目导航

模板调用代码

{eyou:channel type="top" row="8" id="field" currentstyle="on"}

<li> <a class="{$field.currentstyle}" href="{$field.typeurl}">{$field.typename}</a> </li>

{/eyou:channel}

网站前端显示效果(css样式请自行填充)

2.当前栏目下子栏目调用

模板调用代码

{eyou:channel row="6" type ='son' currentstyle="on"}

<li class="{$field.currentstyle}"><a href="{$field.typeurl}" >{$field.typename}</a> </li>

{/eyou:channel}

网站前端显示效果(css样式请自行填充)

【更多示例】

-------------------------------示例1--------------------------------

描述:输出最顶级栏目,不包括子孙栏目,可用于网站简单的顶部导航

{eyou:channel type="top" row="10" currentstyle="active"}

<a href="{$field.typeurl}" title="{$field.typename}" class="{$field.currentstyle}">{$field.typename}</a>

{/eyou:channel}

-------------------------------示例2--------------------------------

描述:输出二个层级栏目(这里用到channel标签层次嵌套,注意属性id | name的用法)

{eyou:channel type='top' row='10' id='field1' currentstyle='active'} // 第一级栏目循环开始

<li>

<a href="{$field1.typeurl}" title="{$field1.typename}" class="{$field1.currentstyle}">

{$field1.typename}

{eyou:notempty name='$field1.children'} // 判断是否有子栏目(该示例指的是第二级栏目)

有子栏目时才显示这里的html代码,比如:箭头、图标等

{/eyou:notempty}

</a>

{eyou:notempty name='$field1.children'} // 判断是否有子栏目(该示例指的是第二级栏目)

<div>

{eyou:channel name='$field1.children' id='field2' row='10'} // 第二级栏目循环开始

<a href="{$field2.typeurl}" class="dropdown-item ">{$field2.typename}</a>

{/eyou:channel} // 第二级栏目循环结束

</div>

{/eyou:notempty}

</li>

{/eyou:channel} // 第一级栏目循环结束

-------------------------------示例3--------------------------------

描述:输出复杂的三个层级栏目(这里用到channel标签层次嵌套,注意属性id | name的用法)

{eyou:channel type='top' row='10' id='field1' currentstyle='active'} // 第一级栏目循环开始

<li>

<a href="{$field1.typeurl}" title="{$field1.typename}" class="{$field1.currentstyle}">

{$field1.typename}

{eyou:notempty name='$field1.children'}

有子栏目时才显示这里的html代码,比如:箭头、图标等

{/eyou:notempty}

</a>

{eyou:notempty name='$field1.children'} // 判断是否有子栏目(第二级栏目)start

<div>

{eyou:channel name='$field1.children' id='field2' row='10'} //第二级栏目循环开始

<div>

<a href="{$field2.typeurl}" class="dropdown-item ">{$field2.typename}</a>

{eyou:notempty name='$field2.children'} // 判断是否有子栏目(第三级栏目)start

<div class="dropdown-menu animate">

{eyou:channel name='$field2.children' id='field3' row='10'} //第三级栏目循环开始

<a href="{$field3.typeurl}" class="dropdown-item ">{$field3.typename}</a>

{/eyou:channel} //第三级栏目循环结束

</div>

{/eyou:notempty} // 判断是否有子栏目(第三级栏目)end

</div>

{/eyou:channel} // 第二级栏目循环结束

</div>

{/eyou:notempty} // 判断是否有子栏目(第二级栏目)end

</li>

{/eyou:channel} //第一级栏目循环结束

-------------------------------示例4--------------------------------

描述:每隔3条输出文档记录

{eyou:channel typeid='文档ID' row='10' mod='3'}

{eyou:eq name='mod' value='0'}

<a href='{$field.typeurl}'>{$field.typename}</a>

{/eyou:eq}

{/eyou:channel}

-------------------------------示例5--------------------------------

描述:mod属性还用于控制一定记录的换行,每3条记录换行一次

{eyou:channel typeid='文档ID' row='10' mod='3'}

<a href='{$field.typeurl}'>{$field.typename}</a>

{eyou:eq name='mod' value='0'}

<br/>

{/eyou:eq}

{/eyou:channel}

-------------------------------示例6--------------------------------

描述:输出指定起始ID的记录,过滤最前面2条,从第三条开始输出

{eyou:channel typeid='栏目ID' type='son' offset='2'}

<a href='{$field.typeurl}'>{$field.typename}</a>

{/eyou:channel}

-------------------------------示例7--------------------------------

描述:内置变量输出数据索引与记录顺序,key 表示索引,默认从0开始;i 表示顺序,默认从1开始。

{eyou:channel type='top'}

{$key} - {$i}

{/eyou:channel}

效果:

0 - 1

1 - 2

2 - 3

3 - 4

4 - 5

-------------------------------示例8--------------------------------

描述:自定义变量名

{eyou:channel type='top' id='field2'}

<a href='{$field2.typeurl}'>{$field2.typename}</a>

{/eyou:channel}


转自:https://www.eyoucms.com/doc/label/all/492.html#dt_66

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 9,514评论 0 13
  • 一、关于图集模式 1、如何在文章内容页调用封面图片 2、在后台编辑详细内容事无论是粘贴还是手动输入,前台页面使用{...
    阿达_74f4阅读 2,629评论 0 0
  • 最新整理的dede5.7标签调用大全 如果喜欢这篇文章记得关注哦,想看更多就上指尖繁华seo教程网 http://...
    6587191c1970阅读 544评论 2 3
  • 指间独缺执笔惊鸿一抹,心扉独缺傲慢倔强一点。命运如此不公,何求它怜!
    卿落阅读 273评论 0 0
  • 一个人到底可以是天使还是魔鬼? 什么是善恶?善恶本是一体,无善无恶。 那世间是不是就没有公道了? 善恶皆有因果。 ...
    未来可期_6853阅读 315评论 3 1