📄 正在查看:twcms/block/kp_block_global_blog.lib.php
大小:1,810 字节 · 修改:2014-01-23 01:42:52 · 行数:50
1<?php
2defined('KONG_PATH') || exit;
3
4/**
5 * 模型页模块(类似博客列表)
6 * @param int mid 模型ID
7 * @param int pagenum 每页显示条数
8 * @param int titlenum 标题长度
9 * @param int intronum 简介长度
10 * @param string dateformat 时间格式
11 * @param string orderby 排序方式
12 * @param int orderway 降序(-1),升序(1)
13 * @return array
14 */
15function kp_block_global_blog($conf) {
16 global $run;
17
18 // hook kp_block_global_blog_before.php
19
20 $mid = isset($_GET['mid']) ? intval($_GET['mid']) : _int($conf, 'mid', 2);
21 $pagenum = empty($conf['pagenum']) ? 20 : max(1, (int)$conf['pagenum']);
22 $titlenum = isset($conf['titlenum']) ? (int)$conf['titlenum'] : 0;
23 $intronum = isset($conf['intronum']) ? (int)$conf['intronum'] : 0;
24 $dateformat = empty($conf['dateformat']) ? 'Y-m-d H:i:s' : $conf['dateformat'];
25 $orderby = isset($conf['orderby']) && in_array($conf['orderby'], array('id', 'dateline')) ? $conf['orderby'] : 'id';
26 $orderway = isset($conf['orderway']) && $conf['orderway'] == 1 ? 1 : -1;
27
28 $table_arr = &$run->_cfg['table_arr'];
29 $table = isset($table_arr[$mid]) ? $table_arr[$mid] : 'article';
30
31 // 初始模型表名
32 $run->cms_content->table = 'cms_'.$table;
33 $total = $run->cms_content->count();
34
35 // 分页相关
36 $maxpage = max(1, ceil($total/$pagenum));
37 $page = min($maxpage, max(1, intval(R('page'))));
38 $pages = pages($page, $maxpage, $run->cms_content->index_url($mid));
39
40 // 读取内容列表
41 $list_arr = $run->cms_content->list_arr(array(), 'id', -1, ($page-1)*$pagenum, $pagenum, $total);
42 foreach($list_arr as &$v) {
43 $run->cms_content->format($v, $mid, $dateformat, $titlenum, $intronum);
44 }
45
46 // hook kp_block_global_blog_after.php
47
48 return array('total'=> $total, 'pages'=> $pages, 'list'=> $list_arr);
49}
50