在利用phpcms做网站的时候,经常会遇到一个问题,就是在当前列表调用多个栏目下面的内容的问题,那么如何解决呢,有两种方法,一般建议大家选取第一种使用。 第一种、直接写子栏目id ,用cat in
{pc:get sql= "SELECT * from v9_news where status=99 and catid in(21,22,23,24,25) order by id DESC" num= "7" return = "data" }
{loop $data $r }
<li><a href= "{$r[url]}" title= "{$r[title]}" target= "_blank" >{str_cut( $r [ 'title' ],40)}({ date ( 'm-d' , $r [inputtime])})</span></a></li>
{/loop}
{/pc}
这种方法的好处:可以想取那个栏目可以自定义
缺点:要写多个id,后台增加了栏目的话得再把id写进去
第二种,根据父栏目id,如上面的21,22,23,24,25都是 15下面的子栏目,可以这样写:
{loop subcat(15) $k $v }
{php $subcatid [] = $k ;}
{/loop}
{php $subcatid = implode( ',' , $subcatid );}
{pc:get sql= "SELECT * from v9_news where status=99 and catid in ($subcatid) order by id DESC" num= "7" return = "data" }
{loop $data $r }
<li><span><strong><a href= "{$CATEGORYS[$r[catid]][url]}" >[{ $CATEGORYS [ $r [catid]][catname]}]</a><a href= "{$r[url]}" title= "{$r[title]}" target= "_blank" >{str_cut( $r [ 'title' ],40)}</a></strong><em>[{ date ( 'Y-m-d' , $r [inputtime])}]</em></span></li>
{/loop}
{/pc}
好处:只要写一个父栏目id,自动取下级子栏目id
缺点:循环父栏目下所有的子栏目id,如果某个子栏目的内容不想显示的话,不好实现。
发表评论 取消回复