<?php
class ArtContentWidget extends Widget{
/**
* 用于挂件使用,获取导航新闻内容页面
*/
function render($data){
$title = $data['title'];
$tid = isset($data['tid']) ? intval($data['tid']) : 0;
//获取类别信息
$dh="";
$lumn = M("Articlecolumn")->where("scid=$tid")->select();
foreach ($lumn as $key => $values) {
$url="";
$s_c = M("Articlecolumn")->where("scid={$values['cid']}")->count();
if($s_c==0){
$url = U("Article/particularlist",array('Syd'=>$values['cid'],'name'=>$title));
}else {
$url=U('Article/artlist',array('Syd'=>$values['cid'],'name'=>$values['name']));
}
$dh .="
<a href='".$url."'>".$values['name']."</a>|";
}
import("ORG.Util.Page"); // 导入分页类
$_count = M("Articlecolumn")->where("scid=$tid")->count();
$_page = new Page($_count,12);
$_list = M("Articlecolumn")->where("scid=$tid")->limit($_page->firstRow.','.$_page->listRows)->select();
foreach($_list as $key=>$val){
$cid=$val['cid'];
$act = M("Article");
$content_str = "";
$listArt=array();
$listArt = $act->where("cid=$cid")->order('aid desc')->limit(7)->select();
if((count($listArt))<7){
$se_where['cid']=array('exp',"in(SELECT `cid` FROM `articlecolumn` WHERE scid=$cid)");
$app_list = $act->where($se_where)->order('aid desc')->limit(7-count($listArt))->select();
$listArt = array_merge($listArt,$app_list);
}
foreach($listArt as $key=>$vals){
$url_listcontent=U("Article/listcontent",array('Syd'=>$vals['aid']));
$content_str .= "<li><a href='".$url_listcontent."'><span>".date('Y-m-d',$vals['postDate'])."</span>".$vals['subject']."</a></li>";
}
$url_particularlist=U("Article/particularlist",array('Syd'=>$val['cid'],'name'=>$val['name']));
$result .="<div class='modular1'>
<div class='modular_title'>
<strong>".$val['name']."</strong>
<span>
<a href='".$url_particularlist."'>
更多>>
</a>
</span>
</div>
<ul class='col_modular'>".$content_str."</ul>
</div>";
}
$assign = array(
'cateselect'=>$result,//$cateselect
'tls'=>$title,
'slist'=>$_list,
'dh'=>$dh,
'pageStr'=>$_page->show(),
);
return $this->renderFile("ArtContent",$assign);
}
}
?>if((count($listArt))<7){
$se_where['cid']=array('exp',"in(SELECT `cid` FROM `articlecolumn` WHERE scid=$cid)");
$app_list = $act->where($se_where)->order('aid desc')->limit(7-count($listArt))->select();
$listArt = array_merge($listArt,$app_list);
}就这句,如果注释掉的话 是可以访问的不注释 偶尔会 30秒超时
做的是:查询该类别下的 7条数据,如果数据不足7条
就再查 类别子类下一级)的数据.
大神帮忙 看看,
最佳答案