織夢列表頁list標籤調用支持flag屬性方法

織夢列表頁list標籤支持flag屬性方法:(注:紅色標記部分就是修改處)

1、打開include/arc.listview.class.php

2、找到 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、找到 $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、找到 $ctag->GetAtt("orderway"); 替換爲 $ctag->GetAtt("flag");

6、找到函數 GetArcList 在參數中添加 $flag=''

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=''
)

7、在"//排序方式"上面添加 :

//添加flag標籤

$whereFlag = "";

if($flag!='') {

    $whereFlag = " and arc.flag like '%{$flag}%' ";

}

8、找到if(preg_match('/hot|click|weight|lastpost/', $orderby)) 修改成  if(preg_match('/hot|click|lastpost|weight|flag/', $orderby))

9、標籤調用:

  {dede:list flag='c' pagesize ='3'}

      {/dede:list}

  接下來{dede:list}標籤就支持了flag屬性的調用了。

 list標籤支持flag屬性效果圖:

list標籤支持flag屬性效果圖

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章