zblog获取多个分类的文章,并按[最新/热门/热评]进行排序

森木博客 zblog笔记 2020-04-14 1891 5

这是zblogphp开发的一些常用代码片段的了,今天得空收集整理一下,用下面函数直接放主题文件的include.php

function zblogsm_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=zblogsm_GetArticleCategorys($num,'$id1,$id2,$id3',true)  as $articles}
    <li><a href="{$articles.Url}" target="_blank">{$articles.Title}</a></li>
{/foreach}

其中$num代表数量,$id1这些表示分类id,这些可以是具体写死的数值,也可以配合后台指定数据来做到后台可配,值得一提的是,我们可以修改函数中的“array('log_PostTime'=>'DESC');”

log_PostTime    //按照时间排序;
log_CommNums    //按照评论数量排序;
log_ViewNums    //按照浏览数量排序;

在以前的zblog模板制作学习中我们知道DESC表示倒序,ASC表示正序,可以按照自己意愿来做排序!

评论

精彩评论
2021-01-03 11:20:19

@2021年1月1号  
早晨5点云账本播报
金股价格: 75元
注册股东7551472人
24小时新增4329人
C轮时间银行长78028人;
24小时新增77人
达到C轮时间银行长(整体活动结束)奖励:
①1万AIC
②时间银行112股原 始股权
③C轮行长全体平分云账本1%的原始股权
入驻店铺165989家
新增44家
登记合约612.4113亿元
24小时新增0.3214亿元
每名股东限制登记合约5份,履约后回报:
1〉? 50金股
2〉? 6万通用提货权
3〉? 5万新零售优先股
4〉? 五大创新项目股权
?智能教育500股
?智能医疗500股
?人工智能500股
?大  数  据500股
?共享出行500股

2020-10-10 13:40:27

三个地方个

2021-07-02 17:42:05

@撒旦法 zblog森木博客响应式主题

2020-11-03 18:37:57

@撒旦法 啥意思

2020-10-10 13:41:08

@撒旦法 梵蒂冈