正在加载周涛博客
自留地
切勿乱来!
        找回密码

PHPCMS V9调用全站数据

11

extention.func.php 里面增加:

 


/**
* 跨模型 跨栏目调用最新数据
*
* @param    $modelid        模型ID 可以有多个用,隔开
* @param    $limit        要调用的数量
* @param    $siteid         站点ID 默认为1
* @return     array       返回一个数组
*/
function news($modelid="1,2", $limit="20", $siteid=1){
  $db = pc_base::load_model('content_model');
  $mdb = pc_base::load_model('sitemodel_model');
  $mid = explode(',', $modelid);
  $msid = $mdb->select("siteid = $siteid","modelid");
  $modelid = array();
  foreach ($msid as $v) {
    $modelid[]= $v['modelid'];
  }
  foreach ($mid as $v) {
    if(!in_array($v, $modelid)){
      echo $v."不存在,请联系网站管理员!";
      exit();
    }
  }
  $lists = array();
  foreach ($mid as $v) {
    $db->set_model($v);
    $tablename = $db->table_name;
    $lists = array_merge($lists, $db->select('status=99', 'id,catid,title,thumb,url,inputtime,description', $limit, 'inputtime DESC'));
  }
  return array_slice(array_sort($lists, 'inputtime'), 0, $limit);
}
/**
* 跨模型 跨栏目调用最新数据
*
* @param    $arr          要排序的数组
* @param    $keys         排序的字段
* @param    $type         排序方式
* @return     array       返回一个数组
*/
function array_sort($arr, $keys, $type = 'desc') {
    $keysvalue = $new_array = array();
    foreach ($arr as $k => $v) {
        $keysvalue[$k] = $v[$keys];
    }
    if ($type == 'asc') {
        asort($keysvalue);
    } else {
        arsort($keysvalue);
    }
    reset($keysvalue);
    foreach ($keysvalue as $k => $v) {
        $new_array[$k] = $arr[$k];
    }
    return $new_array;
}

调用方式

<?php $data = news('1,2,3', 100); ?>
{loop $data $r}
......your code
{/loop}

1,2,3是模型ID,100是调用数量

赞(1) 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《PHPCMS V9调用全站数据》
文章链接:https://www.ediok.cn/blog/2015/10/422.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

评论前必须登录!

 

关注互联网发展前沿,关注PHPCMS技术演进,钻研PHPCMS技术开发

模块开发联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏