亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > CMS > PhpCMS > 正文

【phpcms-v9】對{pc}標簽進行二次開發,讓其可以獲取limit指定

2024-09-10 07:15:50
字體:
來源:轉載
供稿:網友

【phpcms-v9】對{pc}標簽進行二次開發,讓其可以獲取limit指定的文章條數.

1.{pc}標簽中limit參數只有在有分頁的情況下才會起作用,在無分頁的情況下是不起作用的,那么如果我們想獲取指定數據段的記錄,該如何操作呢?

以下寫法都不能滿足需求:

  1.   {pc:content action="lists" catid="$catid" order="id desc" limit="0,7" } {/pc} //默認獲取的第0篇到第7篇文章 
  2.  
  3.    {pc:content action="lists" catid="$catid" order="id desc" limit="7,7" } {/pc} //默認獲取的還是第0篇到第7篇文章,而不是第7篇到14篇文章
  4.  
  5.    {pc:content action="lists" catid="$catid" order="id desc" num="7" } {/pc} //默認獲取的還是第0篇到第7篇文章
  6.  
  7.    {pc:content action="lists" catid="$catid" order="id desc"       limit="7,7" num=“7” } {/pc} //默認獲取的還是第0篇到第7篇文章,而不是第7篇到14篇文章 
  8.  
  9. {pc:content action="lists" catid="$catid"  order="id desc" num="7"   start=“7” } {/pc} //這樣應該能夠獲取到第7篇到第14篇文章,從第7篇文章開始,獲取后面的7篇文章

2.如果想實現如圖功能,該如何操作呢?

第①步:在pc標簽中添加limitt參數,注意是limitt,而不是limit,或者任意名稱的參數:

  1. <!-- 第0-7篇文章 -->   
  2.             {php $i=0;}   
  3.             {pc:content action="lists"  catid="$catid"  limitt="0,7" order="id DESC"}   
  4.             <ul class="erji_center_content">   
  5.                 {loop $data $r}   
  6.                 <li><a href="{$r[url]}">{$r[title]}</a></li>   
  7.                 {/loop}   
  8.             </ul>   
  9.             <span class="border-cx"></span>   
  10.             {/pc}   
  11.                
  12.                
  13.             <!-- 第7-14篇文章 -->   
  14.             {php $i=0;}   
  15.             {pc:content action="lists"  catid="$catid"  limitt="7,7" order="id DESC"}   
  16.             <ul class="erji_center_content">   
  17.                 {loop $data $r}   
  18.                 <li><a href="{$r[url]}">{$r[title]}</a></li>   
  19.                 {/loop}   
  20.             </ul>   
  21.             <span class="border-cx"></span>   
  22.             {/pc}   
  23.    
  24.             <!-- 第14-21篇文章 -->   
  25.             {php $i=0;}   
  26.             {pc:content action="lists"  catid="$catid"  limitt="14,7" order="id DESC"}   
  27.             <ul class="erji_center_content">   
  28.                 {loop $data $r}   
  29.                 <li><a href="{$r[url]}">{$r[title]}</a></li>   
  30.                 {/loop}   
  31.             </ul>   
  32.             <span class="border-cx"></span>   
  33.             {/pc}   

第②步:修改content_tag.class.php文件中的lists方法

  1. /**  
  2.      * 列表頁標簽:主要返回的是主表中數據與附表中數據  
  3.      * @param $data  
  4.      */   
  5.     public function lists($data) {   
  6.         $catid = intval($data['catid']);                                    //pc標簽中catid屬性   
  7.            
  8.            
  9.         //加上這行代碼即可   
  10.         $data['limit'] = (isset($data['limitt'])&& (!emptyempty($data['limitt'])))?$data['limitt']:$data['limit'];      
  11.    
  12.            
  13.            
  14.         //pc標簽中limit屬性,此行代碼由weiyanhui添加   
  15.         if(!$this->set_modelid($catid)) return false;                        //會根據欄目id->對應的模型id->對應的模型表   
  16.         if(isset($data['where'])) {                                         //如果pc標簽中設置了where屬性,一般情況下不存在   
  17.             $sql = $data['where'];                                             
  18.         } else {                                                            //如果pc標簽中沒有設置where屬性    
  19.             $thumb = intval($data['thumb']) ? " AND thumb != ''" : '';      //如果有thumb屬性   
  20.             if($this->category[$catid]['child']) {                           //當前欄目下是否存在子欄目   
  21.                 $catids_str = $this->category[$catid]['arrchildid'];     //所有子欄目id,包括當前欄目自身id   
  22.                 $pos = strpos($catids_str,',')+1;                             
  23.                 $catids_str = substr($catids_str$pos);                    //所有子欄目id,不包括當前欄目自身id   
  24.                 $sql = "status=99 AND catid IN ($catids_str)".$thumb;       //拼接成一個sql語句   
  25.             } else {   
  26.                     $sql = "status=99 AND catid='$catid'".$thumb;               //如果當前欄目下不存在子欄目   
  27.             }   
  28.         }   
  29.         $order = $data['order'];                                            //pc標簽中order屬性   
  30.         //$sql作為一個條件出現,調用的是model.calss.php文件中的select方法,返回結果集數組,并按照鍵名'id'排序   
  31.         $return = $this->db->select($sql'*'$data['limit'], $order'''id');//從數據庫中獲取主表數據,使用的也是sql語句查詢   
  32.         //注意:修改了$data['limit']為$data['limitt']了,修改于2012年09月21日 19:15   
  33.         //如果需要在前臺顯示類別名稱,可添加如下代碼   
  34.            
  35.         $TYPES = getcache('type_content','commons');//獲取類別緩存文件,此文件緩存了所有與類別信息相關的信息   
  36.         foreach ($return as $key=>$v) {                                        
  37.             $return[$key][typename]=$TYPES[$v['typeid']][name];//給$return中的每篇文章追加一個類別字段   
  38.         }   
  39.         //echo "<pre>";   
  40.         //print_r($return);   
  41.            
  42.         //調用副表的數據   
  43.         if (isset($data['moreinfo']) && intval($data['moreinfo']) == 1) {   //如果pc標簽中設置了moreinfo屬性:是否調用附表數據   
  44.             $ids = array();   
  45.             //$return為返回的主表數據   
  46.             foreach ($return as $v) {                                       //循環主表中的記錄信息:$v-主表中的每條記錄   
  47.                 if (isset($v['id']) && !emptyempty($v['id'])) {   
  48.                     $ids[] = $v['id'];                                      //ids[]是主表中排序完成的文章id數組   
  49.                 } else {   
  50.                     continue;   
  51.                 }   
  52.             }   
  53.             if (!emptyempty($ids)) {   
  54.                 $this->db->table_name = $this->db->table_name.'_data';      //副表名    
  55.                 $ids = implode('/',/''$ids);                              //以逗號拼接成一個字符串   
  56.                 $r = $this->db->select("`id` IN ('$ids')"'*''''''''id');//查詢與主表中數據有關的副表中的數據   
  57.                 if (!emptyempty($r)) {   
  58.                     foreach ($r as $k=>$v) {                             //副表中的數據   
  59.                         //$return:返回的主表中的數據,主表中的id字段值與附表中的id字段值是對應的,也就是說一篇文章在主表中存儲的id跟在附表中存儲的id的值是相等的   
  60.                         if (isset($return[$k])) $return[$k] = array_merge($v$return[$k]);//主表中數據與副表中數據合并    
  61.                     }  //開源軟件:Vevb.com 
  62.                 }   
  63.             }   
  64.         }   
  65.         return $return;   
  66.     }   

發現在pc標簽中,并不是所有的條件參數都可以是變量的,如下所示:

{pc content="lists" catid="$catid" limit="$start,9"}{/pc}

catid:可以是變量

limit:中的第一個條件是不可以為變量的,再如:where="" 也是不允許出現變量的,當pc標簽的參數為單個條件時可以為變量,多個條件時不可以為變量.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲综合日韩在线| 成人有码在线视频| 在线亚洲欧美视频| 欧美性xxxxx极品| 热久久视久久精品18亚洲精品| 国产精品96久久久久久| 蜜臀久久99精品久久久无需会员| www.99久久热国产日韩欧美.com| 久久综合色88| 日韩欧美在线字幕| 日韩中文字幕视频在线观看| 亚洲一区二区三区乱码aⅴ| 日韩在线一区二区三区免费视频| 狠狠色狠狠色综合日日五| 日韩毛片中文字幕| 日韩中文字幕欧美| 92版电视剧仙鹤神针在线观看| 国产精品视频久久| 日韩欧美在线第一页| 亚洲色图第一页| 国产精品久久久久久搜索| 91中文在线观看| 日韩精品在线免费| 欧美性生交大片免网| 久久亚洲精品视频| 亚洲开心激情网| 高清日韩电视剧大全免费播放在线观看| 日韩成人久久久| 国产欧美va欧美va香蕉在线| 亚洲三级 欧美三级| 正在播放欧美一区| 亚洲精品电影在线| 午夜免费在线观看精品视频| 97香蕉久久超级碰碰高清版| 国产有码一区二区| 77777少妇光屁股久久一区| 久久99亚洲热视| 亚洲人成网站999久久久综合| 国产一区二区三区毛片| 日韩在线观看免费高清完整版| 亚洲成人av片在线观看| 国产精品一香蕉国产线看观看| 国产精品国语对白| 久久人人爽人人爽人人片亚洲| 色播久久人人爽人人爽人人片视av| 日韩高清中文字幕| 中文字幕日韩欧美| 久久久国产精品亚洲一区| 日韩美女激情视频| 中文字幕日本欧美| 欧美日韩综合视频网址| 中文字幕综合在线| 亚洲人成电影在线观看天堂色| 国产精品一区二区久久久久| 国产成人精品久久二区二区| 国产精品免费看久久久香蕉| 久久成人免费视频| 26uuu日韩精品一区二区| 日韩在线播放视频| 91极品女神在线| 2019国产精品自在线拍国产不卡| 69av视频在线播放| 欧美成人精品在线播放| 亚洲精品美女在线观看播放| 日韩精品久久久久| 一区二区三区视频观看| 欧美激情精品久久久久久| 国产一区二区三区视频| 中文字幕精品在线视频| 91av视频导航| 91精品国产99久久久久久| 精品伊人久久97| 成人精品久久久| 最近2019年好看中文字幕视频| 国产亚洲精品美女久久久久| 最近2019中文字幕mv免费看| 久久久视频精品| 精品国产91久久久| 91chinesevideo永久地址| 国产精品自在线| 91国产精品视频在线| 欧美一级淫片aaaaaaa视频| 日韩精品一区二区三区第95| 久久久久日韩精品久久久男男| 亚洲黄色av女优在线观看| 亲子乱一区二区三区电影| 成人xvideos免费视频| 亚洲人成电影网站| 国产精品一区二区三区毛片淫片| 国产精品电影在线观看| 欧美精品免费在线观看| 97在线精品国自产拍中文| 国产成人a亚洲精品| 日本欧美黄网站| 美女999久久久精品视频| 国精产品一区一区三区有限在线| 欧美精品videos性欧美| 美女撒尿一区二区三区| 欧美午夜精品久久久久久人妖| 韩剧1988免费观看全集| 欧美肥臀大乳一区二区免费视频| 亚洲第一区在线观看| 国产精品精品久久久| 日本一欧美一欧美一亚洲视频| 欧美xxxx14xxxxx性爽| 自拍偷拍免费精品| 色综合视频一区中文字幕| 粉嫩老牛aⅴ一区二区三区| 色悠悠久久久久| 午夜精品一区二区三区av| 亚洲成人免费网站| 亚洲一区二区久久久久久久| 久久综合久久八八| 久久久久久97| 日本免费久久高清视频| 欧美精品成人91久久久久久久| 色噜噜久久综合伊人一本| 91九色精品视频| 亚洲人精选亚洲人成在线| 久久在精品线影院精品国产| 午夜精品视频在线| 欧美一级视频在线观看| 成人免费在线网址| 国产精品揄拍一区二区| 欧美激情一区二区三区在线视频观看| 国产黑人绿帽在线第一区| 福利二区91精品bt7086| 国产成人精品免费久久久久| 国产精品久久久久久久久影视| 亚洲xxx大片| 91tv亚洲精品香蕉国产一区7ujn| 国产欧美精品久久久| 992tv成人免费影院| 一本大道亚洲视频| 3344国产精品免费看| 亚洲欧美成人在线| 欧美丰满少妇xxxxx| 亚洲人成在线一二| 国产精品影院在线观看| 久久这里只有精品视频首页| 久久香蕉精品香蕉| 欧美性xxxx极品高清hd直播| 色播久久人人爽人人爽人人片视av| 亚洲日本成人女熟在线观看| 国产免费一区二区三区香蕉精| 久久精品视频免费播放| 91免费视频网站| 午夜精品久久久久久久99热浪潮| 亚洲免费视频观看| 国产精品激情自拍| 国产成人激情小视频| 日韩在线观看免费网站| 欧美激情二区三区| 日韩精品视频在线观看网址| 国产日韩在线亚洲字幕中文| 久久躁狠狠躁夜夜爽| 色99之美女主播在线视频| 欧美精品制服第一页| 国产日韩欧美一二三区| 97超级碰在线看视频免费在线看| 国内精品一区二区三区四区| 久久精品99久久久香蕉| 成人精品福利视频| 亚洲精品中文字幕av|