织梦列表页list标签支持flag属性方法:(注:红色标记部分就是修改处)
1、打开include/arc.listview.class.php
2、找到 var $remoteDir;
替换 var $remoteDir;
var $flag;
3、找到下方代码并注释
// if($this->TotalResult==-1)// {// $cquery = "SELECT COUNT(*) AS dd FROM `dede_arctiny` arc WHERE ".$this->addSql;// $row = $this->dsql->GetOne($cquery);// if(is_array($row))// {// $this->TotalResult = $row['dd'];// }// else// {// $this->TotalResult = 0;// }// } |
4、在253行左右找到$this->TotalPage = ceil($this->TotalResult/$this->PageSize);在前面添加如下代码:
/* flag */ if($this->TotalResult==-1) {foreach($this->dtp->CTags as $tagid=>$ctag){$flag = $ctag->GetAtt('flag');if($flag!='') {$this->addSql .= " and (arc.flag like '%{$flag}%') ";}} $cquery = "SELECT COUNT(*) AS dd FROM `dede_archives` arc WHERE ".$this->addSql; $row = $this->dsql->GetOne($cquery); if(is_array($row)) { $this->TotalResult = $row['dd']; } else { $this->TotalResult = 0; } } /* flag end */ |
5、在637行左右找到$ctag->GetAtt("orderway")
替换$ctag->GetAtt("orderway"),
$ctag->GetAtt("flag")
6、在712行左右function GetArcList($limitstart=0,$row=10,$col=1,$titlelen=30,$infolen=250,
$imgwidth=120,$imgheight=90,$listtype="all",$orderby="default",$innertext="",$tablewidth="100",$ismake=1,$orderWay='desc',$flag='')中添加了$flag=''
7、在745行左右也就是"//排序方式"上面添加 :
//添加flag标签
$whereFlag = "";
if($flag!='') {
$whereFlag = " and arc.flag like '%{$flag}%' ";
}
8、在799行左右 修改成 if(preg_match('/hot|click|lastpost|weight|flag/', $orderby))
9、标签调用:
{dede:list flag='c' pagesize ='3'}
{/dede:list}
接下来{dede:list}标签就支持了flag属性的调用了。
list标签支持flag属性效果图: