校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 網站建設 > 建站知識 > 實現{dede:sql=""}分頁教程

實現{dede:sql=""}分頁教程

POST TIME:2020-04-13 22:19

相信很多使用dedecms的朋友在網上查找關于dede:sql標簽進行分頁的解決方案時都不盡如人意,尤其是在列表頁使用dede:sql調用外部數據(所謂調用外部數據就是指在后臺只是創建個空欄目,然后對應的列表模板文件中使用dede:sql指定自定義的數據源,數據源與該欄目本身是沒有邏輯關系的,目的是為了讓織夢能按照它的規則來幫我們將數據源生成靜態文件予以展示)時,我本人也搜索了很多資料,網上的答案都不夠完美,有的是直接在模板文件中執行php代碼來實現分頁,顯然此方法無法生成靜態文件,有的直接在sql里面指定limit參數,但又無法實現智能分頁,織夢官方也沒有給出具體的解決方案,在dede論壇有看到織夢核心人物天涯給出的回復是采用自由列表的方法,顯然自由列表無法指定外部數據源,最后實在沒辦法只能自己動手了,首先想到的思路是將dede:list標簽進行改造了,熟悉dede的朋友應該知道這個列表頁專用標簽的工作原理大致是先通過欄目變量id獲取到對應的數據源再呈現到頁面上來,那么我們就可以讓它不僅僅通過欄目變量id還可以通過指定的sql語句來獲取數據源了,比如我們可以另外嵌入一個類似{dede:listsql sql=’select * from wp_posts’ pagesize=’10′}的標簽來使用。
思路已經有了,接下來我們打開include/arc.listview.class.php這個文件來給它動個小手術吧!
找到:
View Code PHP
if(!is_object($ctag)){$ctag = $this->dtp->GetTag("list");}
這一段,在其后添加如下代碼:
View Code PHP
//add by Gump 2011-12-31 http://5loveb.com/if(!is_object($ctag)){$ctag = $this->dtp->GetTag("listsql");if (is_object($ctag)){$cquery = $ctag->GetAtt("sql");$cquery=preg_replace("/SELECT(.*?)FROM/is","SELECT count(*) as dd FROM",$cquery);$cquery = preg_replace("/ORDER(.*?)SC/is", "", $cquery);$row = $this->dsql->GetOne($cquery);if(is_array($row)){$this->TotalResult = $row['dd'];}else{$this->TotalResult = 0;}}}//end
然后找到:
View Code PHP
if($ctag->GetName()=="list"){$limitstart = ($this->PageNo-1) * $this->PageSize;$row = $this->PageSize;if(trim($ctag->GetInnerText())==""){$InnerText = GetSysTemplets("list_fulllist.htm");}else{$InnerText = trim($ctag->GetInnerText());}$this->dtp->Assign($tagid,$this->GetArcList($limitstart,$row,$ctag->GetAtt("col"),$ctag->GetAtt("titlelen"),$ctag->GetAtt("infolen"),$ctag->GetAtt("imgwidth"),$ctag->GetAtt("imgheight"),$ctag->GetAtt("listtype"),$ctag->GetAtt("orderby"),$InnerText,$ctag->GetAtt("tablewidth"),$ismake,$ctag->GetAtt("orderway")));}
這一段,在其后添加如下代碼:
View Code PHP
//add by Gump 2011-12-31 http://5loveb.com/else if($ctag->GetName()=="listsql"){$limitstart = ($this->PageNo-1) * $this->PageSize;$row = $this->PageSize;if(trim($ctag->GetInnerText())==""){$InnerText = GetSysTemplets("list_fulllist.htm");}else{$InnerText = trim($ctag->GetInnerText());}$this->dtp->Assign($tagid,$this->GetSqlList($limitstart,$row,$ctag->GetAtt("sql"),$InnerText));}//end
最后找到function GetArcList這個方法,在其后添加一個可以通過傳入sql參數獲取指定數據源的方法,代碼如下:
View Code PHP
//add by Gump 2011-12-31 http://5loveb.com//*** 通過listsql標簽中sql屬性傳入的參數來獲得一個單列的文檔列表* */function GetSqlList($limitstart = 0, $row = 10, $sql = '', $innertext){global $cfg_list_son;$innertext = trim($innertext);if ($innertext == '') {$innertext = GetSysTemplets('list_fulllist.htm');}//處理SQL語句$limitStr = " LIMIT {$limitstart},{$row}";$this->dsql->SetQuery($sql . $limitStr);$this->dsql->Execute('al');$t2 = ExecTime();//echo $t2-$t1;$sqllist = '';$this->dtp2->LoadSource($innertext);$GLOBALS['autoindex'] = 0;//獲取字段while($row = $this->dsql->GetArray("al")) {$GLOBALS['autoindex']++;if(is_array($this->dtp2->CTags)){foreach($this->dtp2->CTags as $k=>$ctag){if($ctag->GetName()=='array'){//傳遞整個數組,在runphp模式中有特殊作用$this->dtp2->Assign($k,$row);}else{if(isset($row[$ctag->GetName()])){$this->dtp2->Assign($k,$row[$ctag->GetName()]);}else{$this->dtp2->Assign($k,'');}}}}$sqllist .= $this->dtp2->GetResult();}//while$t3 = ExecTime();//echo ($t3-$t2);$this->dsql->FreeResult('al');return $sqllist;}//end
總共就添加三段代碼,每一段代碼基本都參考它緊接著的上面那段原始代碼,而無需改變它原來任何一個地方的代碼,應該算是比較完美的手術了,接下來在模板文件中的使用方法就跟一開始思路中所提到的那樣,分頁標簽依舊沿用原來的,調用范例:
View Code HTML
{dede:listsql sql='select ID,post_title from wp_posts' pagesize='10'}<li><a href="http://5loveb.com/[field:ID /].html">[field:post_title /]</a></li>{/dede:listsql}<!--分頁-->{dede:pagelist listsize='2' listitem='index pre pageno next end '/}


收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
亚洲成人av福利| av在线播放不卡| 日韩精品久久理论片| 亚洲精品自拍动漫在线| 最新日韩在线视频| 国产精品美女久久久久av爽李琼| 九色|91porny| 国产一区啦啦啦在线观看| 精品系列免费在线观看| 国产在线视频一区二区三区| 国产一区在线精品| 国产+成+人+亚洲欧洲自线| 国产91富婆露脸刺激对白| 丰满放荡岳乱妇91ww| 成人开心网精品视频| 91在线小视频| 日本精品视频一区二区| 欧美性一区二区| 欧美一区二区三区四区高清| 欧美一区二区三区人| 精品日韩在线观看| 国产日韩影视精品| 亚洲女厕所小便bbb| 樱花影视一区二区| 三级不卡在线观看| 精品一区二区在线免费观看| 国产精品88888| 不卡视频免费播放| 色琪琪一区二区三区亚洲区| 欧美日韩的一区二区| 日韩精品一区二区在线观看| 欧美激情中文字幕一区二区| 一区二区在线看| 日韩一区精品视频| 国产一区二区美女| 91麻豆6部合集magnet| 欧美精品九九99久久| 国产亚洲精久久久久久| 亚洲免费三区一区二区| 青椒成人免费视频| kk眼镜猥琐国模调教系列一区二区| 色婷婷精品大在线视频| 欧美一区二区三区四区五区 | 久久精品二区亚洲w码| 国产91高潮流白浆在线麻豆| 欧美综合天天夜夜久久| 日韩免费高清av| 国产精品久久久久四虎| 日韩激情视频在线观看| 成人午夜精品在线| 欧美人伦禁忌dvd放荡欲情| 久久免费的精品国产v∧| 亚洲区小说区图片区qvod| 美女精品自拍一二三四| 97精品久久久久中文字幕| 91精品国产欧美一区二区18| 国产精品免费久久| 日本不卡123| 97se亚洲国产综合自在线不卡| 欧美日韩国产精品成人| 国产精品一品二品| 欧美视频一区二区三区四区| 中文一区在线播放| 美女在线视频一区| 色94色欧美sute亚洲线路一ni| 久久亚洲二区三区| 亚洲成av人片在线观看| 波多野结衣中文字幕一区二区三区| 欧美绝品在线观看成人午夜影视| 日本一区二区成人| 精品亚洲国产成人av制服丝袜| 色哟哟国产精品| 国产欧美日韩不卡免费| 蜜桃一区二区三区在线观看| 欧美视频在线一区二区三区 | 日韩成人一级片| 成人激情电影免费在线观看| 日韩视频免费直播| 亚洲一区视频在线观看视频| 白白色亚洲国产精品| 久久伊人中文字幕| 天天综合天天做天天综合| 日本久久一区二区三区| 国产精品成人在线观看| 国产精品一区二区在线播放 | 亚洲日韩欧美一区二区在线| 国产成人自拍网| 日韩欧美在线不卡| 午夜欧美大尺度福利影院在线看| 99久久精品国产精品久久| 久久亚洲捆绑美女| 久久99最新地址| 欧美一二三四在线| 日韩精品福利网| 777a∨成人精品桃花网| 亚洲一区二区三区在线看| 色爱区综合激月婷婷| 亚洲免费观看高清| av电影在线观看完整版一区二区| 国产精品女主播在线观看| 国产成人免费视频一区| 久久久久一区二区三区四区| 激情综合色播激情啊| 欧美mv和日韩mv国产网站| 六月丁香综合在线视频| 欧美成人精品高清在线播放| 裸体在线国模精品偷拍| 日韩一级高清毛片| 久久国产精品99久久人人澡| 欧美一级欧美三级在线观看| 免费观看在线色综合| 欧美草草影院在线视频| 国产一区二区三区四区在线观看| 久久精品一区二区三区av| 粉嫩av一区二区三区在线播放| 欧美激情自拍偷拍| 91美女视频网站| 亚洲亚洲精品在线观看| 91精品国产欧美一区二区成人| 欧美一级欧美一级在线播放| 久久福利视频一区二区| 国产亚洲综合在线| 不卡的av网站| 一区二区三区免费在线观看| 欧美剧情电影在线观看完整版免费励志电影| 亚洲一区二区四区蜜桃| 91精品午夜视频| 国产一区二区成人久久免费影院 | 精品福利av导航| 成人a免费在线看| 亚洲另类中文字| 6080yy午夜一二三区久久| 激情成人午夜视频| 中文字幕一区二区三区不卡| 欧美性生活久久| 久久99精品久久久久久久久久久久| 国产亚洲自拍一区| 91麻豆免费看| 青娱乐精品在线视频| 久久久精品免费观看| 色欧美片视频在线观看 | 欧美日韩大陆一区二区| 看电视剧不卡顿的网站| 中文字幕一区二区三区在线不卡| 欧美日韩免费高清一区色橹橹 | 久久99久国产精品黄毛片色诱| 国产日韩v精品一区二区| 色婷婷综合五月| 蜜臀精品久久久久久蜜臀| 国产精品麻豆久久久| 制服丝袜成人动漫| 成熟亚洲日本毛茸茸凸凹| 亚洲韩国精品一区| 国产免费观看久久| 欧美视频自拍偷拍| 国产+成+人+亚洲欧洲自线| 亚洲不卡av一区二区三区| 久久久久久久久99精品| 欧美日韩一级二级| 丰满白嫩尤物一区二区| 日韩av中文在线观看| 国产精品久久久久久福利一牛影视| 欧美精品一二三四| www.66久久| 久久精品久久99精品久久| |精品福利一区二区三区| 精品免费一区二区三区| 亚洲桃色在线一区| 欧美成人综合网站| 欧美日韩美少妇| 99精品视频中文字幕| 国产在线精品一区二区三区不卡 | 日韩精品一区二区在线| 在线观看日韩一区| 波多野洁衣一区| 九色|91porny| 日日夜夜精品免费视频| 亚洲欧洲制服丝袜| 久久精品一区二区| 日韩一区二区视频| 欧美性猛交xxxxxx富婆| 成人va在线观看| 国产精品 欧美精品| 久久99久久精品| 日韩电影在线看| 亚洲成在线观看| 亚洲男人的天堂网| 国产精品高潮久久久久无| 亚洲精品在线免费播放| 91精品国产综合久久久久久| 欧美午夜片在线看| 日本高清不卡视频| 91麻豆精品在线观看| 大白屁股一区二区视频| 国产一区二区不卡老阿姨| 蜜桃av噜噜一区二区三区小说| 天天爽夜夜爽夜夜爽精品视频| 亚洲一区电影777| 亚洲一区二区三区在线播放| 亚洲日本乱码在线观看|