phpcms在前台文章列表前显示分类名称的方法

建站服务器

这篇文章将为大家详细讲解有关phpcms在前台文章列表前显示分类名称的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1、打开phpcms\\\\caches\\\\caches_commons\\\\caches_data\\\\category_content_1.cache.php

return array (
  1 => 
  array (
    'catid' => '1',
    'siteid' => '1',
    'type' => '1',
    'modelid' => '0',
    'parentid' => '0',
    'arrparentid' => '0',
    'child' => '1',
    'arrchildid' => '1,2,3,5,162',
    'catname' => '网站介绍',
    'style' => '',
    'image' => '',
    'description' => '',
    'parentdir' => '',
    'catdir' => 'about',
    'url' => '/html/about/',
    'items' => '0',
    'hits' => '0',
    'setting' => 'array (
  \\\\'ishtml\\\\' => \\\\'1\\\\',
  \\\\'template_list\\\\' => \\\\'default\\\\',
  \\\\'page_template\\\\' => \\\\'page\\\\',
  \\\\'meta_title\\\\' => \\\\'\\\\',
  \\\\'meta_keywords\\\\' => \\\\'\\\\',
  \\\\'meta_description\\\\' => \\\\'\\\\',
  \\\\'category_ruleid\\\\' => \\\\'1\\\\',
  \\\\'show_ruleid\\\\' => \\\\'\\\\',
  \\\\'repeatchargedays\\\\' => \\\\'1\\\\',
)',

category_content_1.cache.php

可以看到,这里缓存了所有栏目类别的详细信息,其中就有我们需要的

'catname' => '网站介绍',

2、打开phpcms\\\\modules\\\\content\\\\classes\\\\content_tag.class.php

/**
     * 列表页标签
     * @param $data
     */
    public function lists($data) {
        $catid = intval($data['catid']);
        if(!$this->set_modelid($catid)) return false;
        if(isset($data['where'])) {
            $sql = $data['where'];
        } else {
            $thumb = intval($data['thumb']) ? " AND thumb != ''" : '';
            if($this->category[$catid]['child']) {
                $catids_str = $this->category[$catid]['arrchildid'];
                $pos = strpos($catids_str,',') 1;
                $catids_str = substr($catids_str, $pos);
                $sql = "status=99 AND catid IN ($catids_str)".$thumb;
            } else {
                $sql = "status=99 AND catid='$catid'".$thumb;
            }
        }
        $order = $data['order'];

        $return = $this->db->select($sql, '*', $data['limit'], $order, '', 'id');

content_tag.class.php

3、在上述代码后加入以下代码

$TYPES = getcache('category_content_1','commons');//获取类别缓存2         
    foreach ($return as $key=>$v) {                                       
$return[$key][typename]=$TYPES[$v['catid']]['catname'];//给lists标签返回的数组中增加一个类别字段
}

4、前台调用方法

{$v[typename]}

关于phpcms在前台文章列表前显示分类名称的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » phpcms在前台文章列表前显示分类名称的方法

登录

找回密码

注册