如下图所示,Discuz模板开发过程中,可能会通过{loop}循环输出满足一定条件的数组的数据,比如最新发布,最新回复等。
如何实现其中的第一条数据或前4条数据,输出一种样式,后面的其他数据,又输出其他的样式呢!

为实现该功能,小编尝试在<!–{loop}–>语句中后方使用了[order=n][/order]或[index=n][/index]语法,但是并没有实现效果。HTML直接输出了order或index文字。

  1. [order=6]
  2.                 <li>
  3.                 <a href=”/thread-$index_latest[tid]-1-1.html” class=”topic_img”> <img src=”/uploads/2024/$tupian” title=”$index_latest[subject]” width=”100px” height=”65px”></a>
  4.                 </li>
  5.                 [/order]

小编一番折腾,找到了实现方法,小编不易内容回复可见。

[contentrestriction]{loop}循环的上方通过<!–{eval $mindex=0;}–>定义一个变量。loop循环开始时,进行$mindex++。
通过<!–{if}–>判断变量mindex的值,判断第几个值输出怎么样的样式。<!–{if $mindex==6}–>
<li>
<a href=”/thread-$index_latest[tid]-1-1.html” class=”topic_img”> <img src=”/uploads/2024/$tupian” title=”$index_latest[subject]” width=”100px” height=”65px”></a>
</li>
<!–{else}–>
<li>
<a href=”/thread-$index_latest[tid]-1-1.html” class=”topic_img”> <img src=”/uploads/2024/$tupian” title=”$index_latest[subject]” width=”100px” height=”65px”></a>
</li>
<!–{/if}–>[/contentrestriction]

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部