zblog调用一定时间内不同分类随机文章的方法
首先在include文件内添加以下功能函数:
function xxmy_GetArticleCategorys($Rows,$CategoryID,$hassubcate){ global $zbp; $ids = strpos($CategoryID,',') !== false ? explode(',',$CategoryID) : array($CategoryID); $stime = time(); $ytime = 120*24*60*60; $ztime = $stime-$ytime; $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'), array('>','log_PostTime',$ztime) ); $order = array('rand()'=>''); $articles= $zbp->GetArticleList(array('*'),$where,$order,array($Rows),''); return $articles; }
在需要的位置添加调用代码:
{foreach $array=xxmy_GetArticleCategorys(8,'8,9,10,11,12,13,14,15,16',true) as $related} <li><a href="{$related.Url}" target="_blank">{$related.Title}</a></li> {/foreach}
其中categorys后面第一个数字8指的是调用文章数量;
后面的那一连串数字指的是调用不同分类的ID;
数字120指的是4个月,也就是120天。