您现在的位置是:首页 > 教程 > dedecms教程dedecms教程
dedecms循环调用子栏目及其内容
林包显2023-12-25 23:55:22dedecms教程已有人查阅
导读一直认为织梦模板是非常优秀的CMS,所以对于织梦CMS的研究也就会多一些,今天和大家分享一个比较实用的关于循环调用子栏目及其内容列表的小代
一直认为织梦模板是非常优秀的CMS,所以对于织梦CMS的研究也就会多一些,今天和大家分享一个比较实用的关于循环调用子栏目及其内容列表的小代码,根据标签手册,在织梦(织梦模板)系统中,可以用 channelartlist 标签进行循环子栏目及其栏目数据,据说,它也是织梦(织梦模板)系统中唯一一个支持标签嵌套的调用标签,基本用法如下,可根据需要修改:
上述代码在首页可实现子栏目及子栏目内容列表的调用!下面说说 channelartlist 标签在列表页及内容页的使用。
1、参数简介
channelartlist 标签暂时支持三个参数,分别为:
typeid='0' 限制上级栏目ID;也可以用top,支持“,”表示多个栏目
row='20' 循环的栏目数量,默认为20;
cacheid = '' 标签缓存ID,一般为空
但如果你只是将上述代码原封不动的复制粘贴到终极栏目页或内容页,是不会出现任何调用结果的,因为在标签 channelartlist 中,当typeid为空,则表示当前栏目,但是终极栏目列表和内容页是没有下级栏目的,所以就会出错!
2、调用实例
在终极列表页或内容页,正确的调用方法应该是以下的:
{dede:channelartlist typeid='top'}
这里是typied='top',这个top值可以换为你想要的上级栏目ID,但绝对是不可以为空的。这个大家一定要注意!
3、栏目高亮、高效调用
在该标签下,可以直接分别用 {dede:field name='typename'/}与{dede:field name='typeurl'/}来表示栏目名称与栏目链接的,当然还有一些其它特殊的变量,这里也介绍一下,如:
{dede:field name='id'/}与{dede:field name='typeid'/} 均表示循环中的栏目ID;
{dede:global name='itemindex'} 表示循环递增变量,从1开始;
{dede:global name='itemparity'} 表示循环魔法变量,单数为1,双数为2;
以上就是可以在channelartlist中直接套用的,特别要注意的是第2、3两个,拥有这两个变量,可以轻松制作出各类非常个性的效果,例如栏目的隔行变色等。
关于这个栏目高亮,在 channelartlist.lib.php 并没有自带,但通过以下DIY可实现让当前栏目进行高亮。方法(以织梦模板 5.6为例):
打开channelartlist.lib.php文件,找到如下代码:
<div>
{dede:channelartlist}
<dl>
<dt><strong><a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a></strong><span><a href="{dede:field name='typeurl'/}">更多...</a></span></dt>
<dd>
<ul>
{dede:arclist titlelen='60' row='8'}
<li><span>[field:pubdate function="MyDate('m-d',@me)'/]</span><a href="[field:arcurl /]">[field:title /]</a></li>
{/dede:arclist}
</ul>
</dd>
</dl>
{/dede:channelartlist}
</div>
我没做演示,找了个类似的效果图,借用一下:上述代码在首页可实现子栏目及子栏目内容列表的调用!下面说说 channelartlist 标签在列表页及内容页的使用。
1、参数简介
channelartlist 标签暂时支持三个参数,分别为:
typeid='0' 限制上级栏目ID;也可以用top,支持“,”表示多个栏目
row='20' 循环的栏目数量,默认为20;
cacheid = '' 标签缓存ID,一般为空
但如果你只是将上述代码原封不动的复制粘贴到终极栏目页或内容页,是不会出现任何调用结果的,因为在标签 channelartlist 中,当typeid为空,则表示当前栏目,但是终极栏目列表和内容页是没有下级栏目的,所以就会出错!
2、调用实例
在终极列表页或内容页,正确的调用方法应该是以下的:
{dede:channelartlist typeid='top'}
这里是typied='top',这个top值可以换为你想要的上级栏目ID,但绝对是不可以为空的。这个大家一定要注意!
3、栏目高亮、高效调用
在该标签下,可以直接分别用 {dede:field name='typename'/}与{dede:field name='typeurl'/}来表示栏目名称与栏目链接的,当然还有一些其它特殊的变量,这里也介绍一下,如:
{dede:field name='id'/}与{dede:field name='typeid'/} 均表示循环中的栏目ID;
{dede:global name='itemindex'} 表示循环递增变量,从1开始;
{dede:global name='itemparity'} 表示循环魔法变量,单数为1,双数为2;
以上就是可以在channelartlist中直接套用的,特别要注意的是第2、3两个,拥有这两个变量,可以轻松制作出各类非常个性的效果,例如栏目的隔行变色等。
关于这个栏目高亮,在 channelartlist.lib.php 并没有自带,但通过以下DIY可实现让当前栏目进行高亮。方法(以织梦模板 5.6为例):
打开channelartlist.lib.php文件,找到如下代码:
$pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]);
在其下一行加入一下代码:
if($typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['id']){
$pv->Fields['currentstyle'] = ' id="pic_focus"';
}else{
$pv->Fields['currentstyle'] = '';
}
然后,就可以在模板中进行使用{dede:field name='currentstyle'/}进行调用了。
本文标签:
很赞哦! ()
上一篇:dedecms专题功能新手教程
下一篇:修改织梦cms副栏目数量的方法
相关文章
随机图文
-
织梦dedecms修改tag标签自动提取字节数的方法
第一步:进入到数据库中,分别找到dede_tagindex和dede_taglist(dede_为默认表前缀,如果你的表前缀不一样请按照你网站的表前缀查找 -
织梦dedecms5.7添加自定义属性的实现方法
由于想在网站首页添加一个本站原创内容的版块.又没办法通过版块id来调用,把每篇原创文章添加副栏目又非常麻烦网上查了一下方法,写在这里了.安全起见,就不用命令直接添加了 -
dedecms模板安装教程及模板相关知识汇总
先熟悉一下DEDE模板的相关知识(模板路径/模板文件命名规范),对你是否可以成功安装模板很重要,接下来为你详细介绍下模板的安装问题及实例演示 -
dedecms怎么将data目录迁移到web根目录之外
DedeCMS是不仅是我国站长使用量较大,也是企业用户使用较大的PHP建站系统,随着用户量骤增,一些不法者更是将织梦内容管理系统研究了个透彻,因此网站安全不容忽视。
留言与评论 (共有 条评论) |