dedecms的arclist循环中,判断如果是第一个li,则添加固定的css,否则不加
写法如下:
{dede:arclist row=4 flag='p'}
这句话的意思就是,如果循环出的是第一个,则添加class=on,否则为空。
注意:红色部分有两个等号。
判断当前页是否为DedeCMS首页
{dede:geturl runphp='yes'} $cu = GetCurUrl(); if( $cu == '/' || $cu == '/index.php' ){ @me = 'current'; } {/dede:geturl}
DedeCMS列表页判断字段是否为空
{dede:field.array runphp='yes'} if(@me['shorttitle']==''){ @me=@me['title'];// 注意这个分号,不要忘记了 }else{ @me=@me['shorttitle'];// 注意这个分号,不要忘记了 }{/dede:field.array}
DedeCMS文章详细页判断字段是否为空
{dede:field.price runphp='yes'} if(@me<>''){ @me = '人民币'.@me;// 注意这个分号,不要忘记了 }else{ @me='面议';// 注意这个分号,不要忘记了 }{/dede:field.price}-------------------------------------------------------------------------------
织梦的列表标签中有个弊端,就是不能在标签语句中直接使用if语句做判断,如果针对某个字段做判断的话 可以采用这样一种方法,在列表内部做判断,如果大家有更好的办法,希望能多多指点
{dede:list pagesize='4'}
[field:array runphp='yes'] if(@me['zhiweishuxing']=='热招职位') { @me = (strlen(@me['title'])>20) ? ('<li><a href='.@me['arcurl'].'>'.cn_substr(@me['title'],30).'...'.'</a></li>') :('<li><a href='.@me['arcurl'].'>'.@me['title'].'</a></li>'); } [/field:array] {/dede:list}
----------------------------------------------------------------------
{channelartlist}这个标签在织梦dedecms中是频道列表的意思,加上这个标签,系统的所有栏目就会按顺序排列显示,今天tom在做模板的时候想在织梦dedecms的频道列表中对列表的分布进行区分,也就是排在第一的栏目采用一种class样式,排在第二的栏目则采用另一种class样式,在wp中这种功能可以通过简单的php语言实现,现在tom研究发现在织梦dedecms中也不必望洋兴叹了,利用dede:global标签也可以实现奇偶判别,从而达到这种效果。
例如:第一个栏目(奇数)想采用这种<div class="1"></div>样式第二个出现的栏目(偶数)想采用这种 <div class="2"></div>样式依此循环。实现的方法如下:{dede:channelartlist}
<div class="{dede:global.itemindex runphp='yes'} if((@me %2) == 0) { @me ='2'; } else{ @me = '1'; } {/dede:global.itemindex}></div> {/dede:channelartlist}