找回密码
 立即注册
搜索
查看: 2129|回复: 0

【Phpcms教程】调用多个栏目下文章的两个办法

[复制链接]

581

主题

110

回帖

4066

积分

管理员

积分
4066

众神之神

发表于 2014-10-13 09:19:00 | 显示全部楼层 |阅读模式
第一种、直接写子栏目id ,用cat in
  1. {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"}
  2. {loop $data $r}
  3.        <li><a href="{$r[url]}" title="{$r[title]}" target="_blank">{str_cut($r['title'],40)}({date('m-d',$r[inputtime])})</span></a></li>
  4. {/loop}
  5. {/pc}
复制代码
这种方法的好处:可以想取那个栏目可以自定义
缺点:要写多个id,后台增加了栏目的话得再把id写进去
第二种,根据父栏目id,如上面的21,22,23,24,25都是 15下面的子栏目,可以这样写:
  1. {loop subcat(15)  $k $v}
  2. {php $subcatid[] = $k;}
  3. {/loop}
  4. {php $subcatid  = implode(',', $subcatid);}
  5. {pc:get sql="SELECT * from v9_news where status=99 and catid in ($subcatid) order by id DESC" num="7" return="data" }
  6. {loop $data $r}
  7.         <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>
  8. {/loop}
  9. {/pc}
复制代码
好处:只要写一个父栏目id,自动取下级子栏目id
缺点:循环父栏目下所有的子栏目id,如果某个子栏目的内容不想显示的话,不好实现


循环指定顶级栏目下所有子栏目
  1. {loop subcat(9) $k $v}
  2. {php if($v['type']!=0) continue;}
  3.     <a href="{$v[url]}">[{$v[catname]}]</a>
  4.     {loop subcat($k) $w}
  5.     {php if($w['type']!=0) continue;}
  6.         {$w[catname]}
  7.     {/loop}
  8. {/loop}
复制代码



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|十三博客 ( 鲁ICP备2023000528号 )

GMT+8, 2026-6-1 16:13 , Processed in 0.050076 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表