zblogphp获取多个分类的文章并按照指定需求排序(最新 热门 热评)
作者:admin
| ZBlogCMS
更新:2024-12-26 20:19:12
此文转载自鸟儿博客,原文地址:http://www.birdol.com/zblogjiaocheng/792.html。
由于這个方法太好用,而鸟儿写的又太过于简洁了。。。所以重新整理了下发出来,希望能帮助到有需要的朋友。
下面是一个封装好的函数,复制代码粘贴到你正在使用的主题的include.php里面:
function Nobird_GetArticleCategorys($Rows,$CategoryID,$hassubcate){ global $zbp; $ids = strpos($CategoryID,',') !== false ? explode(',',$CategoryID) : array($CategoryID); $wherearray=array(); foreach ($ids as $cateid){ if (!$hassubcate) { $wherearray[]=array('log_CateID',$cateid); }else{ $wherearray[] = array('log_CateID', $cateid); foreach ($zbp->categorys[$cateid]->SubCategorys as $subcate) { $wherearray[] = array('log_CateID', $subcate->ID); } } } $where=array( array('array',$wherearray), array('=','log_Status','0'), ); $order = array('log_PostTime'=>'DESC'); $articles= $zbp->GetArticleList(array('*'),$where,$order,array($Rows),''); return $articles; }
使用方法:
{foreach $array=Nobird_GetArticleCategorys(10,'1,2,3',true) as $related}
使用说明:
使用方法中第一行代码中的四个阿拉伯数字,10代表调用的文章数量,“1,2,3”代表所调用的栏目ID(多个ID之间用,号隔开即可)。
我们还可以修改函数中的“array('log_PostTime'=>'DESC');”其中:
log_PostTime=按照时间排序;
log_CommNums=按照评论数量排序;
log_ViewNums=按照浏览数量排序;
就这样完全可以根据自己的需要玩出不同的花样来!
免责声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于互联网公开发表的信息。
本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!