Discuz!搭建博客样式论坛 贴内循环问题

王朝学院·作者佚名  2016-08-22
窄屏简体版  字體: 小  |  中  |  大  |  超大  

今天模仿一个博客样式的论坛。贴内循环遇到了问题,怎么才能把贴内和博客一样楼主和其他回复分开循环呢,于是我研究了一下if函数。

<!--{loop$postlist$post}--><!--{if$rushreply&&$_GET['checkrush']&&$post['rewardfloor']!=1}--><!--{evalcontinue;}--><!--{/if}--><div id="post_$post[pid]"><!--{subtemplate forum/viewthread_node}--></div><!--{eval$postcount++;}--><!--{/loop}-->

这是默认的循环,可以看得出,楼主和回复是一起循环的。怎么分开呢。。首先、我想到了< !--{if $post['first']}-->即只有楼主显示。通过< !--{else}-->把他们分开循环。结果发现不放在< !--{loop $postlist $post}-->中< !--{if $post['first']}-->就无法识别。这时我想到通过div控制。但是做成博客样式的确复杂,我想让一部分div循环,一部分不循环,众所周知,楼主语句只会执行1次。是不会循环的,于是。我加了个判断在< !--{if $post['first']}-->后面,< !--{if $_G['forum_thread']['replies']}-->即有回复则显示。果然成功了。那个激动啊。展示下完整代码:

<!--{loop$postlist$post}--><!--{if$rushreply&&$_GET['checkrush']&&$post['rewardfloor']!=1}--><!--{evalcontinue;}--><!--{/if}--><!--{if$post['first']}--><div id="post_$post[pid]"class="box"><!--{subtemplate forum/viewthread_node}--></div><!--{if$_G['forum_thread']['replies']}-->回复要单独显示且不循环的内容<!--{/if}--><!--{else}--><div id="post_$post[pid]"><divclass="cell"><!--{subtemplate forum/viewthread_node}--></div></div><!--{/if}--><!--{eval$postcount++;}--><!--{/loop}-->

通过这种方式便可以做成博客样式了。如果你有更好的方法希望留言,大家一起研究下。

原文地址:http://www.pone.me/75/discuz-loop/

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航