channel|频道标签

DedeCMS

DedeCMS模板标签参考手册



channel|频道标签

标签名称:channel
标记简介:织梦常用标记,通常用于网站顶部以获取站点栏目信息,方便网站会员分类浏览整站信息
功能说明:
用于获取栏目列表
适用范围:
全局使用
基本语法:

{dede:channel type='top' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}
 <li><a href='[field:typelink/]'>[field:typename/]</a> </li>
{/dede:channel}
相关函数:

文件\include\taglib\channel.lib.php第2行
function lib_channel(&$ctag,&$refObj)
参数说明:
typeid = '0' 栏目ID
reid = '0' 上级栏目ID
row = '100' 调用栏目数
col = '1' 分多少列显示(默认为单列)
type = 'son | sun' son表示下级栏目,self表示同级栏目,top顶级栏目
currentstyle = '' 应用样式
底层模板字段:
ID(同 id),typeid, typelink, typename, typeurl,typedir(仅表示栏目的网址) 例: {dede:channel type='top'} <a href='[field:typelink /]'>[field:typename/]</a> {/dede:channel}
注:在没有指定typeid的情况下,type标记与模板的环境有关,如,模板生成到栏目一,那么type='son'就表示栏目一的所有子类
使用实例:
这个标签是全局常用标记,主要用于显示页面的栏目分类,我们可以查看默认模板\templets\default\head.htm中的相关代码:
{dede:channel type='top' currentstyle="<li class='thisclass'><a href='~typelink~'>~typename~</a> </li>"}
<li><a href='[field:typeurl/]'>[field:typename/]</a></li>{/dede:channel}
这里的栏目可以通过后台进行设置,栏目显示顺序按照排序的高低进行,我们可以在系统后台[核心]-[栏目管理]中进行栏目设置:
频道标签
设置完成我们可以在首页顶部看到相关的效果
频道标签
当然这里涉及到一个顶级栏目和子级栏目显示的问题,我们可以在模板中使用相应的标签进行调用,我们来看一个封面的页面内容:
频道标签
我们查看这个文章封面\templets\default\index_article.htm的模板标签
<ul>
{dede:channel type='son' currentstyle="<li class='thisclass'><a href='~typelink~'><span>~typename~</span></a> </li>"}
<li><a href='[field:typeurl/]'><span>[field:typename/]</span></a></li>{/dede:channel}
</ul>
这里就使用了 type='son'这个属性用来显示子栏目。

很多用户希望顶部导航连接便于SEO,需要去除超链接中的“index.html”,我们可以在这里对标签进行一个修改:
{dede:channel type='top'}
<li><a href='[field:typeurl function='str_replace("index.html","",@me)'/]'>[field:typename/]</a></li> {/dede:channel}