PHPcms如何调用全站最新文章

最近小左自己也在学习PHPcms v9的相关知识,因为我准备使用这个系统做几个网站所以就简单的学习了一下,为了方便日后的记忆所以就把相关的知识分享到这个博客,主要是当做一个笔记闲话少说开始了解一下吧。

1.PHPcms v9如何调用全站最新文章。

修改 phpcms\modules\content\classes content_tag.class.php 在最后面的 } 上面添加

public function newcontent($data){
$num = intval($data['limit']) ? intval($data['limit']) : ’20′;
// 设置排序
switch($data['order']){
case ’1′:
$order = ‘ `id` ASC ‘;
break;
case ’2′:
$order = ‘ `id` DESC ‘;
break;
case ’3′:
$order = ‘ `inputtime` ASC ‘;
break;
case ’4′:
$order = ‘ `inputtime` DESC ‘;
break;
case ’5′:
$order = ‘ `updatetime` ASC ‘;
break;
case ’6′:
$order = ‘ `updatetime` DESC ‘;
break;
default:
$order = ‘ `id` DESC ‘;
}
if($data['catid']){
$catids = explode(‘,’, $data['catid']);
foreach($catids as $catid){
$catid = intval($catid);
if(empty($catid))continue;
$this->set_modelid($catid);
$where = $this->category[$catid]['child'] ? ‘ `catid` IN (‘.$this->category[$catid]['arrchildid'].’)’ : ” `catid` = $catid”;
$datas = $this->db->select($where, ‘*’, $num, $order);
$data[$catid]['data'] = $datas;
// 记录本次的文章数
$data['num'][] = count($datas);
$model_num++;
}
}else{
$models = getcache(‘model’, ‘commons’);
foreach($models as $model){
$this->db->set_model($model['modelid']);
$datas = $this->db->select(”, ‘*’, $num, $order);
$data[$model['modelid']]['data'] = $datas;
// 记录本次的文章数
$data['num'][] = count($datas);
$model_num++;
}
}
if($data){
// 获取每个模型应该截取的条数
$num = ceil($num/$model_num);
// 循环条数记录用于找出条数不满足的数量然后进行平均
$w_num = $w_num_t = ”;
foreach($data['num'] as $num_t){
if($num_t < $num){
$w_num += $num-$num_t;
$w_num_t++;
}
}
// 判断是否有不满足平均数的 如果有那么就增加平均值
if($w_num_t){
$num += ceil($w_num/($model_num-$w_num_t));
}
$datas = array();
foreach($data as $r){
$r_n = ”;
if(is_array($r['data']))
foreach($r['data'] as $r_t){
$datas[] = $r_t;
if(++$r_n == $num)break;
}
}
return $datas;
}else{
return false;
}
}

模板调用:

{pc:content action=”newcontent” }

{pc:content action=”newcontent”  num=”10″ order=”views DESC” cache=”3600″}

2.PHPcms v9如何调用指定几个栏目的最新文章。

{pc:get sql=”SELECT * from v9_news where status=99 and catid in(21,22,23,24,25) order by id DESC” num=”7″ return=”data”}
{loop $data $r}
<li><a href=”{$r[url]}” title=”{$r[title]}” target=”_blank”>{str_cut($r['title'],40)}({date(‘m-d’,$r[inputtime])})</span></a></li>
{/loop}
{/pc}

本文固定链接: http://www.idc-blog.com/?p=487 | 网络菜鸟学习园地

该日志由 admin 于2013年07月18日发表在 phpcms开发模板制作 分类下,
原创文章转载请注明: PHPcms如何调用全站最新文章 | 网络菜鸟学习园地

报歉!评论已关闭.