欢迎来到素材无忧网,按 + 收藏我们
登录 注册 退出 找回密码

dedecms的arclist循环中判断第一个li添加css,否则不加

时间: 2018-11-20 23:57 阅读: 作者:素材无忧网

dedecms的arclist循环中,判断如果是第一个li,则添加固定的css,否则不加

 

写法如下:

  1. {dede:arclist row=4  flag='p'}
  2.  <li [field:global name=autoindex runphp="yes"](@me==1)? @me="class=on":@me="";[/field:global]>[field:global.autoindex/]</li>
  3. {/dede:arclist}

  1. [field:global name=autoindex runphp="yes"](@me==1)? @me="class=on":@me="";[/field:global]

这句话的意思就是,如果循环出的是第一个,则添加class=on,否则为空。

注意:红色部分有两个等号。

 

 判断当前页是否为DedeCMS首页

  1. {dede:geturl runphp='yes'}  
  2. $cu = GetCurUrl();  
  3. if( $cu == '/' || $cu == '/index.php' ){  
  4.     @me = 'current';  
  5. }  
  6. {/dede:geturl}

 

DedeCMS列表页判断字段是否为空

  1. {dede:field.array runphp='yes'}
  2.    if(@me['shorttitle']==''){
  3.       @[email protected]['title'];// 注意这个分号,不要忘记了
  4.    }else{
  5.       @[email protected]['shorttitle'];// 注意这个分号,不要忘记了
  6.    }
  7. {/dede:field.array}

 

DedeCMS文章详细页判断字段是否为空

  1. {dede:field.price runphp='yes'}
  2.    if(@me<>''){
  3.       @me = '人民币'[email protected];// 注意这个分号,不要忘记了
  4.    }else{
  5.       @me='面议';// 注意这个分号,不要忘记了
  6.    }
  7. {/dede:field.price}

 

-------------------------------------------------------------------------------

 

织梦的列表标签中有个弊端,就是不能在标签语句中直接使用if语句做判断,如果针对某个字段做判断的话 可以采用这样一种方法,在列表内部做判断,如果大家有更好的办法,希望能多多指点

  1. {dede:list pagesize='4'} 
  2. [field:array runphp='yes'] 
  3. if(@me['zhiweishuxing']=='热招职位') 
  4. @me = (strlen(@me['title'])>20) ? ('<li><a href='[email protected]['arcurl'].'>'.cn_substr(@me['title'],30).'...'.'</a></li>') :('<li><a href='[email protected]['arcurl'].'>'[email protected]['title'].'</a></li>'); 
  5.  
  6. [/field:array] 
  7. {/dede:list}

----------------------------------------------------------------------

 

{channelartlist}这个标签在织梦dedecms中是频道列表的意思,加上这个标签,系统的所有栏目就会按顺序排列显示,今天tom在做模板的时候想在织梦dedecms的频道列表中对列表的分布进行区分,也就是排在第一的栏目采用一种class样式,排在第二的栏目则采用另一种class样式,在wp中这种功能可以通过简单的php语言实现,现在tom研究发现在织梦dedecms中也不必望洋兴叹了,利用dede:global标签也可以实现奇偶判别,从而达到这种效果。

例如:

第一个栏目(奇数)想采用这种<div class="1"></div>样式

第二个出现的栏目(偶数)想采用这种 <div class="2"></div>样式

依此循环。

 

实现的方法如下:

  1. {dede:channelartlist} 
  2. <div class="{dede:global.itemindex runphp='yes'} 
  3. if((@me %2) == 0) 
  4. @me ='2'; 
  5. else{ 
  6. @me = '1'; 
  7. {/dede:global.itemindex}></div> 
  8. {/dede:channelartlist}

版权声明: 本站资源均来自互联网或会员发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

转载请注明: dedecms的arclist循环中判断第一个li添加css,否则不加

标签:  
模板推荐