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

首頁 > CMS > PhpCMS > 正文

Phpcms V9 調用全站文章排行的解決方案

2024-09-10 07:18:15
字體:
來源:轉載
供稿:網友
今天忙于修改網站界面,想在首頁添加瀏覽排行功能,卻發現Phpcms竟然不支持調用全站文章排行。下午仔細研究了Phpcms源碼,終于找到解決辦法。

默認情況下,Phpcms只支持調用當前文章排行,代碼如下:

{pc:content  action="hits" catid="$catid" num="10" order="views DESC" cache="3600"}

其中$catid為待調用欄目的id,如果想實現全站調用,需要修改phpcms/modules/content/classes/content_tag.class.php文件,找到以下函數:

  1.     /** 
  2.  * 排行榜標簽 
  3.  * @param $data 
  4.  */ 
  5. public function hits($data) { 
  6.     $catid = intval($data['catid']); 
  7.     if(!$this->set_modelid($catid)) return false; 
  8.   
  9.     $this->hits_db = pc_base::load_model('hits_model'); 
  10.     $sql = $desc = $ids = ''
  11.     $array = $ids_array = array(); 
  12.     $order = $data['order']; 
  13.     $hitsid = 'c-'.$this->modelid.'-%'
  14.     $sql = "hitsid LIKE '$hitsid'"
  15.     if(isset($data['day'])) { 
  16.         $updatetime = SYS_TIME-intval($data['day'])*86400; 
  17.         $sql .= " AND updatetime>'$updatetime'"
  18.     } 
  19.     if($this->category[$catid]['child']) { 
  20.         $catids_str = $this->category[$catid]['arrchildid']; 
  21.         $pos = strpos($catids_str,',')+1; 
  22.         $catids_str = substr($catids_str$pos); 
  23.         $sql .= " AND catid IN ($catids_str)"
  24.     } else { 
  25.         $sql .= " AND catid='$catid'"
  26.     } 
  27.     $hits = array(); 
  28.     $result = $this->hits_db->select($sql'*'$data['limit'], $order); 
  29.     foreach ($result as $r) { 
  30.         $pos = strpos($r['hitsid'],'-',2) + 1; 
  31.         $ids_array[] = $id = substr($r['hitsid'],$pos); 
  32.         $hits[$id] = $r
  33.     } 
  34.     $ids = implode(','$ids_array); 
  35.     if($ids) { 
  36.         $sql = "status=99 AND id IN ($ids)"
  37.     } else { 
  38.         $sql = ''
  39.     } 
  40.     $this->db->table_name = $this->tablename; 
  41.     $result = $this->db->select($sql'*'$data['limit'],'','','id'); 
  42.     foreach ($ids_array as $id) { 
  43.         if($result[$id]['title']!='') { 
  44.             $array[$id] = $result[$id]; 
  45.             $array[$id] = array_merge($array[$id], $hits[$id]); 
  46.         } 
  47.     } 
  48.     return $array

修改代碼(見注釋):

  1. /** 
  2.  * 排行榜標簽 
  3.  * @param $data 
  4.  */ 
  5. public function hits($data) { 
  6.     $catid = intval($data['catid']); 
  7.   
  8.     $this->hits_db = pc_base::load_model('hits_model'); 
  9.     $sql = $desc = $ids = ''
  10.     $array = $ids_array = array(); 
  11.     $order = $data['order']; 
  12.     $hitsid = 'c-'.$this->modelid.'-%'
  13.     $sql = "hitsid LIKE '$hitsid'"
  14.     if(isset($data['day'])) { 
  15.         $updatetime = SYS_TIME-intval($data['day'])*86400; 
  16.         $sql .= " AND updatetime>'$updatetime'"
  17.     } 
  18.     if(!emptyempty($catid) && $catid>0) { //添加判斷:id是否為空 
  19.         if(!$this->set_modelid($catid)) return false; 
  20.         if($this->category[$catid]['child']) { 
  21.             $catids_str = $this->category[$catid]['arrchildid']; 
  22.             $pos = strpos($catids_str,',')+1; 
  23.             $catids_str = substr($catids_str$pos); 
  24.             $sql .= " AND catid IN ($catids_str)"
  25.         } else { 
  26.             $sql .= " AND catid='$catid'"
  27.         } 
  28.     } 
  29.       
  30.     $hits = array(); 
  31.     $result = $this->hits_db->select($sql'*'$data['limit'], $order); 
  32.     foreach ($result as $r) { 
  33.         $pos = strpos($r['hitsid'],'-',2) + 1; 
  34.         $ids_array[] = $id = substr($r['hitsid'],$pos); 
  35.         $hits[$id] = $r
  36.     } 
  37.     $ids = implode(','$ids_array); 
  38.     if($ids) { 
  39.         $sql = "status=99 AND id IN ($ids)"
  40.     } else { 
  41.         $sql = ''
  42.     } 
  43.     $this->db->table_name = $this->tablename; 
  44.     $result = $this->db->select($sql'*'$data['limit'],'','','id'); 
  45.     foreach ($ids_array as $id) { 
  46.         if($result[$id]['title']!='') { 
  47.             $array[$id] = $result[$id]; 
  48.             $array[$id] = array_merge($array[$id], $hits[$id]); 
  49.         } 
  50.     } 
  51.     return $array

修改代碼后,無論設置欄目id為0或空,都能調取全站文章排行。

調用方法1:

{pc:content  action="hits" catid="0" num="10" order="views DESC" cache="3600"}

調用方法2:

{pc:content  action="hits" num="10" order="views DESC" cache="3600"}

作者:Esion  來源:http://www.49028c.com/esion  轉載請注明出處
。

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美在线精品免播放器视频| 亚洲精品电影久久久| 色偷偷噜噜噜亚洲男人| 成人国产精品日本在线| 久久艹在线视频| 日韩在线中文字幕| 亚洲一区美女视频在线观看免费| 97精品一区二区视频在线观看| 欧美午夜片欧美片在线观看| 一级做a爰片久久毛片美女图片| 欧美wwwxxxx| 九九视频直播综合网| 亚洲欧洲美洲在线综合| 欧美巨乳美女视频| 国产精品久久久久9999| 麻豆国产va免费精品高清在线| 色yeye香蕉凹凸一区二区av| 亚洲第一视频网站| 亚洲视频在线观看| 日韩有码在线视频| 日韩精品高清在线观看| 国产精品日韩欧美综合| 亚洲欧美制服综合另类| 日韩av影视在线| 91欧美精品成人综合在线观看| 亚洲成人性视频| 国产欧美一区二区三区视频| 成人精品一区二区三区电影黑人| 日韩色av导航| 亚洲成人激情图| 中文字幕视频一区二区在线有码| 欧美亚洲国产视频| 一区二区成人av| 亚洲日韩欧美视频| 中文字幕亚洲综合久久筱田步美| 久久天天躁狠狠躁夜夜爽蜜月| 在线成人中文字幕| 国产成人精品一区| 992tv在线成人免费观看| 亚洲精品福利在线| 欧美日韩国产精品| 欧美激情精品久久久久久蜜臀| 亚洲男人第一av网站| 久久亚洲精品一区二区| 日本精品va在线观看| 精品欧美国产一区二区三区| 久久久久久久香蕉网| 中文字幕综合在线| 亚洲图片在线综合| 欧美国产视频日韩| 黄色成人在线播放| 久久精品国产成人精品| 久久影视电视剧免费网站清宫辞电视| 色在人av网站天堂精品| 欧美日韩国产中字| 亚洲男人av电影| 97视频在线看| 成人在线免费观看视视频| 日韩女优人人人人射在线视频| 亚洲天堂av网| 欧美一乱一性一交一视频| 亚洲国产中文字幕在线观看| 日韩精品免费一线在线观看| 国产亚洲精品久久久久动| 久久精品国产亚洲| 中文字幕在线成人| 欧美成人第一页| 国产成人精品免高潮费视频| 欧美性感美女h网站在线观看免费| 日韩欧美中文在线| 国产ts人妖一区二区三区| 精品国产成人在线| 久久久亚洲精选| 欧美黑人xxxx| 久久99精品视频一区97| 国产亚洲精品美女| 亚洲激情电影中文字幕| 日韩欧美在线视频免费观看| xx视频.9999.com| 亚洲欧美精品中文字幕在线| 国内偷自视频区视频综合| 欧美激情一区二区三区成人| 国产一区二区香蕉| 国产精品国内视频| 国产亚洲精品综合一区91| 欧美日韩在线第一页| 亚洲视频在线免费看| 亚洲天堂免费视频| 91精品久久久久久综合乱菊| 国产精品美女网站| 国产伦精品一区二区三区精品视频| 日本精品视频网站| 成人两性免费视频| 欧美性少妇18aaaa视频| 国产精品视频导航| 国产精品成人免费电影| 黑人狂躁日本妞一区二区三区| 日本精品性网站在线观看| 麻豆一区二区在线观看| 久久综合伊人77777| 91精品久久久久久久久久另类| 欧美福利在线观看| 日韩激情av在线播放| 欧美激情欧美狂野欧美精品| 亚洲福利在线视频| 亚洲一区二区三区sesese| 欧美一区二区三区……| 久久久久久久成人| 国产精品夜间视频香蕉| 国产精品第一页在线| 亚洲香蕉av在线一区二区三区| 亚洲精品在线看| 国模吧一区二区| 成人免费观看49www在线观看| 色先锋久久影院av| 91国产精品视频在线| 性欧美暴力猛交69hd| 中文字幕免费精品一区高清| 日本一区二区在线播放| 一区二区三区亚洲| 98精品国产高清在线xxxx天堂| 亚洲精品色婷婷福利天堂| 亚洲天堂色网站| 国产欧美一区二区三区在线看| 青青草成人在线| 日本aⅴ大伊香蕉精品视频| 91高清在线免费观看| 国产综合在线观看视频| 精品视频在线播放| 国产精品伦子伦免费视频| 97人人爽人人喊人人模波多| 日韩亚洲成人av在线| 久久久成人的性感天堂| 国产精品夜间视频香蕉| 91精品国产91久久久久久| 在线电影中文日韩| 成人在线播放av| 国产在线观看精品一区二区三区| 91理论片午午论夜理片久久| 日韩av影片在线观看| 精品久久久在线观看| 亚洲图片制服诱惑| 青青青国产精品一区二区| 亚洲国产私拍精品国模在线观看| 精品视频在线播放色网色视频| 国产精品视频网站| 国产精品美女无圣光视频| 欧美激情国产日韩精品一区18| 国产精品私拍pans大尺度在线| 亚洲成人激情在线观看| 国产成+人+综合+亚洲欧美丁香花| 日本精品一区二区三区在线播放视频| 91精品啪aⅴ在线观看国产| 亚洲综合视频1区| 亚洲精品国产精品国自产观看浪潮| 亚洲xxxx18| 日韩欧美成人网| 有码中文亚洲精品| 欧美电影免费观看电视剧大全| 91精品综合久久久久久五月天| 日韩中文av在线| 精品一区二区三区四区| 成人av资源在线播放| 日本精品久久久久久久|