之前看到一个网站,内容显示的大概如下:
要用4.2之前的版本很难去实现它,难点:不支持条件判断,4.2后就可以了
<div class="hd" id="jcms-downrank-tab">
<ul class="tabs tabs2">
<li class="first active"><h2><a>点击周排行</a></h2></li>
</div>
<div class="bd" id="jcms-downrank-tab-body">
<dl class="ranklist">
<jcms:contentloop channelid="0" classid="0" repeatnum="10" fields="[title],[summary]" orderby="viewnum" timerange="1w">
<#foreach collection="${contents}" var="field" index="i">
<#if test="${i lt 4}">
<#if test="${equals(i,1)}">
<dt class="nobd"><span class="ranknum rn_red">${i}</span><a href="$_{url}" target="_blank" title="${field.title}">${field.title}</a></dt>
<dd><#cutstring len="60">${field.summary}<#/cutstring>...<a href="$_{url}" target="_blank" class="songti">[阅读全文]</a></dd>
<#else>
<dt class=""><span class="ranknum rn_red">${i}</span><a href="$_{url}" target="_blank" title="${field.title}">${field.title}</a></dt>
<#/if>
<#else>
<dt class=""><span class="ranknum">${i}</span><a href="$_{url}" target="_blank" title="${field.title}">${field.title}</a></dt>
<#/if>
<#/foreach>
</jcms:contentloop>
</dl>
</div>
讲解一下:
1、按点击数排列,所以orderby="viewnum"
2、因为是周排行,所以只要取一周内的数据即可:timerange="1w"
3、排列前3的序号是红色的,所以可以根据循环序号是否小于4来分支:<#if test="${i lt 4}">
4、第1个是带简介的,其他只有标题,所以可以用是否等于1来分支:<#if test="${equals(i,1)}">
是否这样的模板舒服多了?
[责任编辑:jumbot]