织梦列表页list标签支持flag属性方法:(注:红色标记部分就是修改处)1、打开include/arc.listview.class.php2、找到 var $remoteDir; 替换 var $remoteDir; var $flag;3、找到下方代码并注释 // if($this-To
// 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属性的调用了。