ZBlog PHP如何用分类的文章按[最新/热门/热评]排序

jaysun

1.jpeg

在调用zblog代码时,经常需要用到调用最新,热门,热评这三个,也是网站比较常见的三类,看到zblog大佬有一边文章关于介绍如何调用排序的,今天也学习一下,希望有帮到大家。

用下面函数直接放主题文件的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    //按照浏览数量排序;

DESC表示倒序,ASC表示正序,可以按照自己意愿来做排序!

您需要 登录账户 后才能发表评论

发表评论

快捷回复: 表情:
评论列表 (暂无评论,134人围观)

还没有评论,来说两句吧...

目录[+]

取消
微信二维码
微信二维码
支付宝二维码