PhpCms V9调用指定栏目子栏目文章的两种方法

简介:

第一种、直接写子栏目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,如果某个子栏目的内容不想显示的话,不好实现


两种方法各有利弊,视情况选之。



本文转自 gutaotao1989 51CTO博客,原文链接:http://blog.51cto.com/taoyouth/1561838

相关文章
|
SQL PHP
DEDE在列表调用当前栏目的文章总数的修改方法
此方法适合织梦dedecmsv5.6及以上版本,其它版本暂未测试,修改方法如下: dede - 598080707.net 打开 include/common.func.php文件,在这个php文件里的?>之前,加上以下代码: function GetTotalArc($t...
817 0
phpcms调用子栏目名称/文章怎么操作
  phpcms调用子栏目名称相对比较简单一些,也是用{pc:content}来调用,只是把action设置为category,catid如果为0的话是调用所有一级栏目,如果是其他数字的话,则调用相应栏目的子栏目,比如以下的案例,catid="13"是调用栏目id为13的所有子栏目。
1119 0
织梦生成栏目找不到模板怎么知道是哪个栏目和模板
  我们在用dedecms批量生成栏目有时会提示“模板文件不存在,无法解析文档!”,怎么知道具体是哪个栏目和模板出错呢?只要加一句代码就可以实现!打开include/arc.listview.class.
2945 0
finecms菜单项导航到第一个子分类
使用finecms 的过程中,如果一个分类有多个分类,那么如何在用户点击大栏目时,自动导航到他的第一个子栏目中呢,在官方提供的demo中没有找到答案就自己写一下吧 在controllers/contentController.php中找到listaction()这个函数进行如下改造,找了子分类,并使用header函数,跳转过去,就完成了 if ($cat['typei
1095 0
dedecms提取某栏目及子栏目名称到首页怎么弄
  我们建网站时有不同的需求,例如为页面创建一个栏目导航,用dedecms如何提取某栏目及子栏目名称和链接呢?如下图所示,先列出指定的顶级栏目,在下方再列出此栏目的所有子栏目。   之前ytkah说过dedecms调用当前栏目的子栏目怎么操作,我们可不可以发散一下思维进行扩展呢?   先列出...
1060 0

相关实验场景

更多