鉴于网上找了好久也没有找到zblog调用多个分类下的指定时间内的热门文章,在网上搜集了各种代码整理之后,成品如下
下面是一个封装好的函数,复制代码粘贴到你正在使用的主题的include.php里面:
function Zzsss_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); } } } $stime = time(); $ytime = 7*24*60*60; $ztime = $stime-$ytime; $order = array('log_ViewNums'=>'DESC'); $where=array( array('array',$wherearray), array('=','log_Status','0'), array('>','log_PostTime',$ztime), ); $articles= $zbp->GetArticleList(array('*'),$where,$order,array($Rows),''); return $articles; }
{foreach $array=Zzsss_GetArticleCategorys(10,'1,2,3',true) as $related} <li><a href="{$related.Url}" target="_blank">{$related.Title}</a></li> {/foreach}
封装函数中7*24*60*60的数字7代表的是7天 可以修改为30 90 等
使用方法中第一行代码中的四个阿拉伯数字,10代表调用的文章数量,“1,2,3”代表所调用的栏目ID(多个ID之间用,号隔开即可)。我们还可以修改函数中的“array('log_PostTime'=>'DESC');”
其中:
log_PostTime=按照时间排序;
log_CommNums=按照评论数量排序;
log_ViewNums=按照浏览数量排序;
就这样完全可以根据自己的需要玩出不同的花样来!
评论于:微商管家解锁会员版微商营销神器
评论于:开源的证件照微信小程序,带流量主
评论于:双开助手微分版 解锁永久vip
评论于:跳过软件卡密工具附带教学