织梦列表页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属性效果图: