DedeCMS列表页判断文章属性并输出样式的方法

在博客早期的文章《DedeCMS调用缩略图 无缩图不显示缩略图》中,余斗教大家如何在织梦列表页中先判断文章是否上传有缩略图,再根据判断结果来决定是否输出默认缩略图,这里用的是织梦的php扩展函数,具体代码如下:

    [field:array runphp=
‘yes’]

    @me=strpos(@me[
‘picname’],
‘defaultpic’)?
:
“<img src=’@me[picname]’alt='[title]’/>”;

    [/field:array]

 

今天,余斗在做医院网站的时候,遇到一个问题,想根据文章的附加属性来添加不同的样式。在《DedeCMS文章列表根据属性输出相应图标或属性文字》一文里,余斗列出用flag函数来判断当前文章的属性做对应输出,代码为:

    [field:flag runphp=
‘yes’]

   
if(stristr(@me,
“c”)) @me =
“[^_^推荐]”;

   
else if(stristr(@me,
“a”)) @me =
“[^_^热门]”;

    
else if(stristr(@me,
“h”)) @me =
“[^_^头条]”;

   
else @me =
;

    [/field:flag]

 

今天,余斗教大家另外一种方法,代码稍微简单一些,是根据缩略图判断的方法延伸而来,具体代码如下(比如判断文章属性是否为滚动s,如果是则添加class=”glay”属性):

    [field:array runphp=
‘yes’]

    @me = (strpos(@me[
‘flag’],
‘s’) ?
“class=’glay'” :
“”);

    [/field:array]

 

这样就可以实现先判断文章属性,再输出对应样式了。其实DedeCMS很多语法都是通用的,我们会其中一个方法,可以贯通到其他方面,这个要看个人需求了!