Phpcms V9 调用全站最新文章的方法
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']) && !empty($v['id'])) { 
	$ids[] = $v['id']; 
	} else { 
	continue; 
	} 
	} 
	if (!empty($ids)) { 
	$this->db->table_name = $this->db->table_name.'_data'; 
	$ids = implode('\',\'', $ids); 
	$r = $this->db->select("`id` IN ('$ids')", '*', '', '', '', 'id'); 
	if (!empty($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(!empty($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']) && !empty($v['id'])) { 
	$ids[] = $v['id']; 
	} else { 
	continue; 
	} 
	} 
	if (!empty($ids)) { 
	$this->db->table_name = $this->db->table_name.'_data'; 
	$ids = implode('\',\'', $ids); 
	$r = $this->db->select("`id` IN ('$ids')", '*', '', '', '', 'id'); 
	if (!empty($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"} 
