创联下属网站:创联数据 | 创联建站 | 广西服务器网
客服热线:400-6800-660 (免长话费)    企业QQ咨询:400 6800 660
创联数据,服务器托管租用,虚拟主机租用及域名注册

签约及项目动态

当前位置:首页 > 互联网研究 > CMS应用 >

2014-09-29 23:19:14 来源:

一、phpcms-v9默认情况下只能在最底层栏目下添加内容,而不能给含有子栏目的栏目添加内容,如果需要给含有子栏目的栏目下添加内容的需求,则需要修改content.php控制器的如下代码:

 

[php] view plaincopy
 
  1. /** 
  2.      * 显示栏目菜单列表 
  3.      */  
  4.     public function public_categorys() {  
  5.         $show_header = '';  
  6.         $cfg = getcache('common','commons');  
  7.         $ajax_show = intval($cfg['category_ajax']);  
  8.         $from = isset($_GET['from']) && in_array($_GET['from'],array('block')) ? $_GET['from'] : 'content';  
  9.         $tree = pc_base::load_sys_class('tree');  
  10.         if($from=='content' && $_SESSION['roleid'] != 1) {    
  11.             $this->priv_db = pc_base::load_model('category_priv_model');  
  12.             $priv_result = $this->priv_db->select(array('action'=>'init','roleid'=>$_SESSION['roleid'],'siteid'=>$this->siteid,'is_admin'=>1));  
  13.             $priv_catids = array();  
  14.             foreach($priv_result as $_v) {  
  15.                 $priv_catids[] = $_v['catid'];  
  16.             }  
  17.             if(empty($priv_catids)) return '';  
  18.         }  
  19.         $categorys = array();  
  20.         if(!empty($this->categorys)) {  
  21.             foreach($this->categorys as $r) {  
  22.                 if($r['siteid']!=$this->siteid ||  ($r['type']==2 && $r['child']==0)) continue;  
  23.                 if($from=='content' && $_SESSION['roleid'] != 1 && !in_array($r['catid'],$priv_catids)) {  
  24.                     $arrchildid = explode(',',$r['arrchildid']);  
  25.                     $array_intersect = array_intersect($priv_catids,$arrchildid);  
  26.                     if(empty($array_intersect)) continue;  
  27.                 }  
  28.                 if($r['type']==1 || $from=='block') {  
  29.                     if($r['type']==0) {  
  30.                         $r['vs_show'] = "<a href='?m=block&c=block_admin&a=public_visualization&menuid=".$_GET['menuid']."&catid=".$r['catid']."&type=show' target='right'>[".L('content_page')."]</a>";  
  31.                     } else {  
  32.                         $r['vs_show'] ='';  
  33.                     }  
  34.                     $r['icon_type'] = 'file';  
  35.                     $r['add_icon'] = '';  
  36.                     $r['type'] = 'add';  
  37.                 } else {  
  38.                     $r['icon_type'] = $r['vs_show'] = '';  
  39.                     $r['type'] = 'init';  
  40.                     $r['add_icon'] = "<a target='right' href='?m=content&c=content&menuid=".$_GET['menuid']."&catid=".$r['catid']."' onclick=javascript:openwinx('?m=content&c=content&a=add&menuid=".$_GET['menuid']."&catid=".$r['catid']."&hash_page=".$_SESSION['hash_page']."','')><img src='".IMG_PATH."add_content.gif' alt='".L('add')."'></a> ";  
  41.                 }  
  42.                 $categorys[$r['catid']] = $r;  
  43.             }  
  44.         }  
  45.         if(!empty($categorys)) {  
  46.             $tree->init($categorys);  
  47.                 switch($from) {  
  48.                     case 'block':  
  49.                         $strs = "<span class='\$icon_type'>\$add_icon<a href='?m=block&c=block_admin&a=public_visualization&menuid=".$_GET['menuid']."&catid=\$catid&type=list' target='right'>\$catname</a> \$vs_show</span>";  
  50.                         $strs2 = "<img src='".IMG_PATH."folder.gif'> <a href='?m=block&c=block_admin&a=public_visualization&menuid=".$_GET['menuid']."&catid=\$catid&type=category' target='right'>\$catname</a>";  
  51.                     break;  
  52.   
  53.                     default:  
  54.                         $strs = "<span class='\$icon_type'>\$add_icon<a href='?m=content&c=content&a=\$type&menuid=".$_GET['menuid']."&catid=\$catid' target='right' onclick='open_list(this)'>\$catname</a></span>";  
  55.                         //修改前  
  56.                         //$strs2 = "<span class='folder'>\$catname</span>";  
  57.                         //修改后  
  58.                         $strs2 = "<span class='\$icon_type'>\$add_icon<a href='?m=content&c=content&a=\$type&menuid=".$_GET['menuid']."&catid=\$catid' target='right' onclick='open_list(this)'>\$catname</a></span>";  
  59.                         break;  
  60.                 }  
  61.             $categorys = $tree->get_treeview(0,'category_tree',$strs,$strs2,$ajax_show);  
  62.         } else {  
  63.             $categorys = L('please_add_category');  
  64.         }  
  65.         include $this->admin_tpl('category_tree');  
  66.         exit;  
  67.     }  

 

 

2.截图如下:

\

 

 

二、案例:

【咨询】栏目下有很多子栏目,如,【即时、国际、大陆等等】,当要添加的内容不属于 【即时、国际、大陆、台湾、港澳、社会、深度、图片、评论、军事、历史、文化、专题、排行】任何一个 栏目时,会将要添加的内容将放在 【咨询 】顶级栏目下

当点击【咨询】时,将显示不属于【即时、国际、大陆、台湾、港澳、社会、深度、图片、评论、军事、历史、文化、专题、排行】栏目下的文章列表


\

 

三、尽量避免这种情况的发生,因为这样会引起index.html文件的冲突,如果确实需要完成此功能,我们可以采取一种其它的实现方式。比如,再建立一个名称为【其它】的子栏目,专门用于存放暂时没有归类的文章。如果不想在模版中显示【其它】这个名字,可以将其屏蔽掉,如下图所示:

\

相关热词延伸阅读:栏目 内容

创联数据——专注于网站建设、网站策划、重塑企业网站价值,南宁网站建设及网站策划第一品牌!

公司名称:南宁桂商信息科技有限公司 增值电信业务经营许可证(ISP证)编号:桂B2-20140002
公司地址:广西南宁五象大道16号景皇国际2719室 咨询热线:400-6800-660、0771-3846226、5607810

关于我们  |  联系我们  |  公司动态  |  在线客服  |  官方微博
Copyright © www. clidc.cn 2005-2013 All Rights Reserved