首页 > 运营 > 帮助中心 > 正文

Phpcms V9 调用全站最新文章的代码

2019-10-17 22:31:22
字体:
来源:转载
供稿:网友
Phpcms默认不支持调用全站最新文章,需要修改文件:/phpcms/modules/content/classes/content_tag.class.php,找到以下函数:
/**
      * 列表页标签
      * @param $data
      */
     public function lists($data) {
         $catid = intval($data['catid']);
         if(!$this->set_modelid($catid)) return false;
         if(isset($data['where'])) {
             $sql = $data['where'];
         } else {
             $thumb = intval($data['thumb']) ? " AND thumb != ''" : '';
             if($this->category[$catid]['child']) {
                 $catids_str = $this->category[$catid]['arrchildid'];
                 $pos = strpos($catids_str,',')+1;
                 $catids_str = substr($catids_str, $pos);
                 $sql = "status=99 AND catid IN ($catids_str)".$thumb;
             } else {
                 $sql = "status=99 AND catid='$catid'".$thumb;
             }
         }
         $order = $data['order'];
 
         $return = $this->db->select($sql, '*', $data['limit'], $order, '', 'id');
                         
         //调用副表的数据
         if (isset($data['moreinfo']) && intval($data['moreinfo']) == 1) {
             $ids = array();
             foreach ($return as $v) {
                 if (isset($v['id']) && !emptyempty($v['id'])) {
                     $ids[] = $v['id'];
                 } else {
                     continue;
                 }
             }
             if (!emptyempty($ids)) {
                 $this->db->table_name = $this->db->table_name.'_data';
                 $ids = implode('/',/'', $ids);
                 $r = $this->db->select("`id` IN ('$ids')", '*', '', '', '', 'id');
                 if (!emptyempty($r)) {
                     foreach ($r as $k=>$v) {
                         if (isset($return[$k])) $return[$k] = array_merge($v, $return[$k]);
                     }
                 }
             }
         }
         return $return;
     }
修改为:
/**
      * 列表页标签
      * @param $data
      */
     public function lists($data) {
         $catid = intval($data['catid']);
         
         if(isset($data['where'])) {
             $sql = $data['where'];
         } else {
             $thumb = intval($data['thumb']) ? " AND thumb != ''" : '';
             if(!emptyempty($catid)) {
                 if(!$this->set_modelid($catid)) return false;
                 if($this->category[$catid]['child']) {
                     $catids_str = $this->category[$catid]['arrchildid'];
                     $pos = strpos($catids_str,',')+1;
                     $catids_str = substr($catids_str, $pos);
                     $sql = "status=99 AND catid IN ($catids_str)".$thumb;
                 } else {
                     $sql = "status=99 AND catid='$catid'".$thumb;
                 }
             }
             else {
                 $sql = "status=99".$thumb;
             }
                 
         }
         $order = $data['order'];
 
         $return = $this->db->select($sql, '*', $data['limit'], $order, '', 'id');
                         
         //调用副表的数据
         if (isset($data['moreinfo']) && intval($data['moreinfo']) == 1) {
             $ids = array();
             foreach ($return as $v) {
                 if (isset($v['id']) && !emptyempty($v['id'])) {
                     $ids[] = $v['id'];
                 } else {
                     continue;
                 }
             }
             if (!emptyempty($ids)) {
                 $this->db->table_name = $this->db->table_name.'_data';
                 $ids = implode('/',/'', $ids);
                 $r = $this->db->select("`id` IN ('$ids')", '*', '', '', '', 'id');
                 if (!emptyempty($r)) {
                     foreach ($r as $k=>$v) {
                         if (isset($return[$k])) $return[$k] = array_merge($v, $return[$k]);
                     }
                 }
             }
         }
         return $return;
     }
修改代码后,即能调取全站最新文章。 调用方法:{pc:content action="lists" num="10" order="id DESC" cache="3600"}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表