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