知识点:栏目调用标签channel的使用、调用顶级栏目、调用二级栏目、调用网站首页链接。
1、DeDeCMS的标签的了解
织梦内容管理系统(DedeCms) 以简单、实用、开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统。DedeCms免费版的主要目标用户锁定在个人站长,功能更专注于个人网站或中小型门户的构建,当然也不乏有企业用户和学校等在使用该系统。
织梦标签起到一个内容调用的作用,能很大程度上减少网站开发的时间。简单的来讲,dedecms标签就是用来调用后台数据 的,用标签替换掉原来板块的物理数据,使其从后台调用 。
辅助网址:http://tools.dedecms.com/dedetag_maker/system.html
使用方法:打开网址后,根据需要点选对应的标签,系统会自动在输入框里给出对应的标签。
2、栏目调用标签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}
参数说明:
参数名称 | 参数作用 |
typeid = '0' | 栏目ID |
reid = '0' | 上级栏目ID |
row = '8' | 调用栏目数 |
col = '1' | 分多少列显示(默认为单列) |
type = 'son | sun' | son表示下级栏目,self表示同级栏目,top顶级栏目 |
currentstyle = ' ' | 应用样式 |
案例练习:调用网站后台的栏目
在上一课的基础上,我们正确调用了网站模板,但是还有很多功能还没有完善,比如,我们在首页点击其中一个导航栏,
结果反馈:“Not Found The requested URL /liebiao.html was not found on this server.”
原因分析:在网站根目录里,liebiao.html文件不存在,因此无法找到。
解决办法:通过栏目调用,来显示。
第一步:在网站后台(http://localhost/dede/)添加栏目。
注意:这里为了和原有htm模板里的栏目进行区分,故意把第一个栏目修改为“最新坐垫推荐”
第二步:准备栏目调用标签
本案例中,需要调用的是顶级栏目,一共调用6个栏目,希望这6个栏目排成一列,因此语法为:
<!--dedecms中调用顶级栏目的标签-->
{dede:channel type='top' row='6' }
<li><a href='[field:typelink/]'>[field:typename/]</a> </li>
{/dede:channel}
第三步:修改网站模板,即网站根目录里的.htm模板文件。
代码修改后:
第四步:网站后台(http://localhost/dede/)生成,然后网站前台(http://localhost)预览测试结果。
右键查看网页源代码,对比理解channel标签的含义。
结果:从网站首页导航栏可以直观看到,导航栏的内容有发生变化。其次,点击任意一个导航栏,可以打开列表页模板。
思考问题:列表页上面的导航栏并没有发生变化,同时,从列表页点击导航栏时,网页出错。这是为什么?
原因分析:列表页的模板没有进行栏目标签调用,因此还是原有的内容。
解决办法:和修改首页模板的方法一样,依次修改列表页模板和文章页模板。
3、使用channel标签进行二级栏目调用
第一步:在网站后台栏目管理里,给一级栏目“最新坐垫推荐”,增加一些二级栏目,用以在首页以及列表页调用二级栏目。
第二步:准备栏目调用标签
本案例中,需要调用的是二级栏目,一共调用6个栏目,这6个栏目都是顶级栏目“最新坐垫推荐”的子栏目,因此语法为:
<!--dedecms中调用二级栏目的标签-->
{dede:channel type='son' row='6' typeid='10'}
<li><a href='[field:typelink/]'>[field:typename/]</a> </li>
{/dede:channel}
思考:typeid从哪里看?
第三步:修改网站模板,即网站根目录里的.htm模板文件。
代码修改后:
{dede:channel type='son' row='6' typeid='10'}
<li><a href='[field:typelink/]'>[field:typename/]</a> </li>
{/dede:channel}
也可使用这种方法(两种代码书写方法都可以):
zh
{dede:channelartlist typeid='10,6'}
{dede:channel type='son' noself='yes' }
<li><a href="[field:typelink/]">[field:typename/]</a></li>
{/dede:channel}
{/dede:channelartlist}
第四步:网站后台(http://localhost/dede/)生成,然后网站前台(http://localhost)预览测试结果。
点击二级栏目,可以实现正常跳转。
思考问题:列表页上面也有调用二级栏目,同时,从列表页点击导航栏时,网页出错。这是为什么?
原因分析:列表页的模板没有进行栏目标签调用,因此还是原有的内容。
解决办法:和修改首页模板的方法一样,依次修改列表页模板和文章页模板。
{dede:channel type='son' row='6' typeid='10' col='1'}
<a href='[field:typelink/]'>[field:typename/]</a> |
{/dede:channel}
4、调用网站首页链接
方法:将首页的url地址改为:{dede:global.cfg_indexurl/}
================这里是结束分割线===================