TWCMS内容列表 获取文章对应的分类名称,链接的修改方法

以\twcms\block\kp_block_global_blog.lib.php 的twcms内容列表修改为例,其他的自己去修改twcms源文件。

TWCMS源码文件:kp_block_global_blog.lib.php

defined('KONG_PATH') || exit;/**
 * 模型页模块(类似博客列表)
 * @param int mid 模型ID
 * @param int pagenum 每页显示条数
 * @param int titlenum 标题长度
 * @param int intronum 简介长度
 * @param string dateformat 时间格式
 * @param string orderby 排序方式
 * @param int orderway 降序(-1),升序(1)
 * @param int showcate 读取对应的分类
 * @return array
 */function kp_block_global_blog($conf) {
        global $run;        
        // hook kp_block_global_blog_before.php

        $mid = isset($_GET['mid']) ? intval($_GET['mid']) : _int($conf, 'mid', 2);
        $pagenum = empty($conf['pagenum']) ? 20 : max(1, (int)$conf['pagenum']);
        $titlenum = isset($conf['titlenum']) ? (int)$conf['titlenum'] : 0;
        $intronum = isset($conf['intronum']) ? (int)$conf['intronum'] : 0;
        $dateformat = empty($conf['dateformat']) ? 'Y-m-d H:i:s' : $conf['dateformat'];
        $orderby = isset($conf['orderby']) && in_array($conf['orderby'], array('id', 'dateline')) ? $conf['orderby'] : 'id';
        $orderway = isset($conf['orderway']) && $conf['orderway'] == 1 ? 1 : -1;
        $views = _int($conf, 'views', 0);
        $showcate = _int($conf, 'showcate', 0);

        $table_arr = &$run->_cfg['table_arr'];
        $table = isset($table_arr[$mid]) ? $table_arr[$mid] : 'article';        // 初始模型表名
        $run->cms_content->table = 'cms_'.$table;
        $total = $run->cms_content->count();        // 分页相关
        $maxpage = max(1, ceil($total/$pagenum));
        $page = min($maxpage, max(1, intval(R('page'))));
        $pages = pages($page, $maxpage, $run->cms_content->index_url($mid));        // 读取内容列表
        $list_arr = $run->cms_content->list_arr(array('quanjs'=> array('>'=>time())), 'id', -1, ($page-1)*$pagenum, $pagenum, $total);
        foreach($list_arr as &$v) {
                $run->cms_content->format($v, $mid, $dateformat, $titlenum, $intronum);                if($showcate){
                        $cate = $run->category->get($v['cid']);
                        $v['cate_name'] = $cate['name'];
                        $v['cate_url'] = $run->category->category_url($v['cid'],$cate['alias']);
                }                if($views){
                        $run->cms_content_views->table = 'cms_'.$table.'_views';
                        $viewsinfo = $run->cms_content_views->get($v['id']);
                        $v['views'] = (int)$viewsinfo['views'];
                }
        }        // hook kp_block_global_blog_after.php

        return array('total'=> $total, 'pages'=> $pages, 'list'=> $list_arr);
}

前端调用方法:

$v['cate_name']  分类名称
$v['cate_url']   分类链接
posted @ 2023-08-20 15:42  浅岛连云  阅读(6)  评论(0编辑  收藏  举报