推56论坛

 找回密码
 免费注册(限中文)

QQ登录

只需一步,快速开始

查看: 4675|回复: 0

[z-blog教程] zblogphp获取多个分类的文章并按照指定需求排序

[复制链接]
发表于 2019-9-20 12:46:20 | 显示全部楼层 |阅读模式
此文转载自鸟儿博客,原文地址: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}{$related.Title}{/foreach}                        使用说明:                                使用方法中第一行代码中的四个阿拉伯数字,10代表调用的文章数量,“1,2,3”代表所调用的栏目ID(多个ID之间用,号隔开即可)。       
                        我们还可以修改函数中的“array('log_PostTime'=>'DESC');”其中:       
                        log_PostTime=按照时间排序;       
                        log_CommNums=按照评论数量排序;       
                        log_ViewNums=按照浏览数量排序;       
                        就这样完全可以根据自己的需要玩出不同的花样来!       

本版积分规则

关闭

推56站长论坛推荐上一条 /1 下一条

免责声明|站长论坛 ( 豫ICP备11018337号-5 )

推56论坛(bbs.tui56.com)站长论坛 网络营销论坛 新手站长论坛 网络推广论坛 外链论坛

Powered by Discuz! X3.4 Licensed

©2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表