channelartlist标签,大家都知道在DedeCMS的系统中,我们可以用这个标签进行循环子栏目及其栏目的文档数据,这也是DedeCMS系统中,唯一一个支持标签嵌套的调用标签,以DedeV5.6新版举例,他的基本调用方法为:

<div class="listbox">

{dede:channelartlist}

<dl class="tbox">

<dt><strong><a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a></strong><span class="more"><a href="{dede:field name='typeurl'/}">更多...</a></span></dt>

<dd>

<ul class="d1 ico3">

{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>

以上标签来源于DedeCMS V5.6 默认首页模板

至于该标签的具体含义这里不再一一熬述,我们重点讲解在列表页/内容页的具体使用;
    1)参数简介
     channelartlist标签暂时支持三个参数,分别为:

typeid='0' 限制上级栏目ID;也可以用top,支持“,”表示多个栏目
row='20' 循环的栏目数量,默认为20;
cacheid = '' 标签缓存ID,一般为空

很多人,经常将上诉标签支持复制到终极栏目页或内容页,很遗憾的是不会出现任何调用结果。因为这里大家可能受到了官方帮助文档不足所带来的遗憾,因
为在这个标签中,当typeid为空,那么则表示当前栏目,但是终极栏目列表和内容页是没有下级栏目的,所以这里就会出错!
    2)调用实例
     在终极列表页或内容页,正确的调用方法应该是以下的:

<div class="listbox">

{dede:channelartlist typeid='top'}

<dl class="tbox">

<dt><strong><a
href="{dede:field name='typeurl'/}">{dede:field
name='typename'/}</a></strong><span class="more"><a
href="{dede:field
name='typeurl'/}">更多...</a></span></dt>

<dd>

<ul class="d1 ico3">

{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>

这里是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个与第三个;拥有这两个变量,可以轻松制作出各类非常个性的效果,例
如栏目的隔行变色等;关于这个栏目高亮,在channelartlist.lib.php虽然系统并没有自带,但我们可以自行制作,让当前栏目进行高亮。

制作方法:
打开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'/}进行调用了。
    4)效果预览

channelartlist标签调用实例的更多相关文章

  1. phpcms v9中调用多栏目的方法--get标签(备实例)

    如调用栏目id为1,2,7的栏目列表: {pc:get sql="select * from v9_category where catid IN (1,2,7)"} {loop ...

  2. Aspcms所有标签调用

    错误号3002: 出现此问题一般是有些频道模板不全,或者缺少一部分模板导致,或者没有单独设置html文件夹,并将所有html页面放进去 基本语法 {aspcms:sitepath} 网站终极目录(可放 ...

  3. dedecms 常用标签调用

    /*------------------单个ip调用-------------------*/ {dede:type typeid="12"} <a title=" ...

  4. 织梦channelartlist标签当前栏目高亮

    channelartlist标签完美支持currentstyle属性,实现自动加载当前栏目CSS样式,可以用来标识当前栏目位置的CSS,解决方法如下: 打开文件include\taglib\chann ...

  5. 梯度迭代树(GBDT)算法原理及Spark MLlib调用实例(Scala/Java/python)

    梯度迭代树(GBDT)算法原理及Spark MLlib调用实例(Scala/Java/python) http://blog.csdn.net/liulingyuan6/article/details ...

  6. DEDE的搜索页面支持arclist和channelartlist标签的操作方法

    很多朋友在使用dedecms进行网站开发时都会存在这样的问题,那就是dedecms的搜索页(search.php)与我们网站页面的模板的头 部.底部不一样,并且还不支持在搜索页调用其他某一栏目的文档. ...

  7. DEDECMS标签调用汇总啊

    非常有用的标签调用的方法 关键描述调用标签: <meta name="keywords" content="{dede:field name='keywords'/ ...

  8. dede标签调用

    关键描述调用标签: <meta name="keywords" content="{dede:field name='keywords'/}">&l ...

  9. DEDECMS中,channelartlist标签

    当前频道的下级栏目的内容列表 dede:channelartlist 标签: {dede:channelartlist row=6} <dl> <dt><a href=' ...

随机推荐

  1. JSP 相关试题(三)

    判断题 1.动态网页和静态网页的根本区别在于服务器端返回的HTML文件是事先存储好的还是由动态网页程序生成的(对 ) 2.Web开发技术包括客户端和服务器端的技术.(对 ) 3.Tomcat和JDK都 ...

  2. cocos2dx 2.x 竖屏

    1, xcode中General->Device Orientation只勾选Portrait. 2, 修改RootViewController.mm中下面代码: // For ios6.0 a ...

  3. openJudge计算概论-谁考了第k名

    /*===================================== 谁考了第k名 总时间限制: 1000ms 内存限制: 65536kB 描述 在一次考试中,每个学生的成绩都不相同,现知道 ...

  4. Collection+JSON 文档

    Collection+JSON 文档 对于这个设计,我们不再以可能的状态和转移为起点,相反,我们将从一个集合状态响应中可能元素的顶层布局开始.从这一点入手,其他细节可以随着设计向超媒体类型最底层属性的 ...

  5. TaffyDB:开源JavaScript数据库

    你是否曾经注意到javascript的对象有点像数据库中的记录,你把很多javascript对象包装到一起时就像是你在处理一个数据库中的表,TaffyDB是一个Javascript库,它提供了强大的数 ...

  6. TKinter之输入框

    输入框是 Entry,应用程序要取得用户的信息,输入框是必不可少的. 输入框比较重要的一个函数: get:返回值即输入框的内容 比如e是一个输入框,e['show']='*'就变成了密码框 小例子:用 ...

  7. spring data redis RedisTemplate操作redis相关用法

    http://blog.mkfree.com/posts/515835d1975a30cc561dc35d spring-data-redis API:http://docs.spring.io/sp ...

  8. android 各国语言对应的缩写

    android资源文件夹的写法规则: 语言缩写-国家地区缩写 语言缩写 藏语:bo_CN en 英文 en_US 英文 (美国) ar 阿拉伯文 ar_AE 阿拉伯文 (阿拉伯联合酋长国) ar_BH ...

  9. windows 下svn 创建分支 合并分支 冲突

    我用的系统是win7+Subversion 1.7.4.服务器搭建就略过了,我也是从网上找的,基本上就是几个命令吧!我用的CentOs6.5 .网上找了几个命令搭建很快,基本上是: 1.# sudo  ...

  10. 【mysql】MySQL存储IP地址

    为什么要问如何存储IP 首先就来阐明一下部分人得反问:为什么要问IP得怎样存,直接varchar类型不就得了吗? 其实做任何程序设计都要在功能实现的基础上最大限度的优化性能.而数据库设计是程序设计中不 ...