php按文章评论数排序,zblog获取分类文章排序按指定的时间排序、评论数量排序、浏览数量排序...

Zblog PHP在1.8版本的时候想要调用多个分类的文章,并且按照自己的需求去排序是很简单的事情,很多博友也利用这个方法进行最新文章排行、热门评论文章排行等等操作,现在随着ZblogPHP版本的升级,已经封装了数据库语句,导致直接使用SQL进行查询会被鄙视,官方的说法是这种方法会加重服务器的负载,执行效率很低。

2e7f9ff9e36d5ecfa8a3bd129159bfff.png

我之前写过一个方法,确实很好用,对于不是很熟悉Zblog的博友来说一般看不懂。所以今天本小编直接分享一下具体的操作过程。

下面是一个封装好的函数,复制代码粘贴到你正在使用的主题的include.php里面:

代码如下:function ChenDeXin_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=ChenDeXin_GetArticleCategorys(10,'1,2,3',true)  as $related}

{$related.Title}

{/foreach}

使用说明:

使用方法中第一行代码中的四个阿拉伯数字,10代表调用的文章数量,“1,2,3”代表所调用的栏目ID(多个ID之间用,号隔开即可)。

我们还可以修改函数中的“array('log_PostTime'=>'DESC');”其中:

log_PostTime=按照时间排序;

log_CommNums=按照评论数量排序;

log_ViewNums=按照浏览数量排序;

就这样完全可以根据自己的需要玩出不同的花样来!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值