迅睿cms模板循环标签每隔几行几个更换或指定输出特定样式
无需魔法,免费体验ChatGPT-4 / MJ绘图 等AI大模型!AI问答、写文案、做表格、绘图、写脚本、写代码...
制作前端模板时,有时在调用循环标签时,需要每隔几条内容,更换或指定输出特定样式。比如列表页循环每逢第三个更换样式;比如循环中实现每隔5条记录加一个隔行符号;比如实现隔行更换样式;比如Table中每三篇文章输出一个特定字段;等等此类问题,都可以使用以下原理来实现:
参考示例一
问题思路
比如在循环中实现每隔5条记录,加一个隔行符号。那么我们可以用循环次数变量除于5,如果被整除,表示可以输出隔行符号了
实现代码
{php $hang = 1;} //初始化行变量 {循环标签开始********} *********** {if $hang%5 == 0} 表示第5行了,可以在这里加上隔行符号<hr> {/if} ******* {php $hang++;} //累计行变量写在结束标签上一行 {循环标签结束********}
参考示例二
问题思路
比如在前端是table表格,循环中,需要5个一行。那么我们可以使用php自带的函数array_chunk将结果数组按N个进行拆分为子数组,就可以很方便的循环出来了。
实现代码
<table> //通过module标签 或 其他循环标签 先查询出结果集 {module module=news order=updatetime}{/module} //通过php自带的函数按每行5个进行拆分 {php $arr=array_chunk($return, 5, true);} //再通过循环变量拆分后的数据进行输出 {loop $arr $i $a} <tr> {loop $a $ii $t} <td><a href="{$t.url}" >{$t.title}</a></td> {/loop} </tr> {/loop} </table>
参考示例三
问题思路
<li> <div class="fl">...</div> <div class="fr">...</div> </li> <li> <div class="fl">...</div> <div class="fr">...</div> </li> <li> <div class="fl">...</div> <div class="fr">...</div> </li>
比如上方前端代码,两条数据一组,按左右布局排列。那么我们可以使用php自带的函数array_chunk将结果数组按2个进行拆分为子数组,进行循环。
实现代码
//通过module标签 或其他循环标签 先查询出结果集 {module module=news order=updatetime}{/module} //通过php自带的函数按每行2个进行拆分 {php $arr=array_chunk($return, 2, true);} //再通过循环变量拆分后的数据进行输出 {loop $arr $i $a} <li> {loop $a $ii $t} <div class=" {if $ii%2==0}fl {else}fr{/if}">{$t.title}</div> {/loop} </li> {/loop}
应用提示
以上示例代码为我遇到的一些场景,都已经过测试,可以应用的场景实际很多。实际在应用中根据你的前端样式和要循环的内容,比葫芦画瓢就行。
声明:禁止复制、盗用、采集、发布本站内容到任何网站及各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。