Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[求助] 如何让DISCUZX2的门户文章支持4级以上的分类

[复制链接]
JustObserver 发表于 2012-8-10 11:28:54 | 显示全部楼层 |阅读模式
需要修改的文件:/source/admincp/admincp_portalcategory.php
只改到5级,想再多可以自己找规律
找到
  1. if($level == 2) {
复制代码
替换
  1. if($level == 4) {
复制代码
找到
  1. $return = '<tr class="hover" id="cat'.$value['catid'].'"><td> </td><td class="td25"><input type="text" class="txt" name="neworder['.$value['catid'].']" value="'.$value['displayorder'].'" /></td><td><div class="'.$class.'">'.
复制代码
替换
  1. $return = '<tr class="hover" id="cat'.$value['catid'].'"><td> </td><td class="td25"><input type="text" class="txt" name="neworder['.$value['catid'].']" value="'.$value['displayorder'].'" /></td><td><div class="'.$class.'" style="margin-left:165px;" >'.
复制代码
找到
  1. } elseif($level == 1) {
复制代码
在上面添加
  1.         }elseif($level == 3) {
  2.                 $return = '<tr class="hover" id="cat'.$value['catid'].'"><td> </td><td class="td25"><input type="text" class="txt" name="neworder['.$value['catid'].']" value="'.$value['displayorder'].'" /></td><td><div class="board"  style="margin-left:110px;" >'.
  3.                 '<input type="text" class="txt" name="name['.$value['catid'].']" value="'.$value['catname'].'" />'.
  4.                 '<a class="addchildboard" href="'.ADMINSCRIPT.'?action=portalcategory&operation=add&upid='.$value['catid'].'">增加五级频道</a></div>'.
  5.                 '</td><td>'.$value['articles'].'</td>'.
  6.                 '<td>'.(empty($value['disallowpublish']) ? cplang('yes') : cplang('no')).'</td>'.
  7.                 '<td>'.(!empty($value['allowcomment']) ? cplang('yes') : cplang('no')).'</td>'.
  8.                 '<td>'.(empty($value['closed']) ? cplang('yes') : cplang('no')).'</td>'.
  9.                 '<td><input class="radio" type="radio" name="newsetindex" value="'.$value['catid'].'" '.($value['caturl'] == $_G['setting']['defaultindex'] ? 'checked="checked"':'').' /></td>'.
  10.                 '<td><a href="'.$value['caturl'].'" target="_blank">'.cplang('view').'</a>
  11.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=edit&catid='.$value['catid'].'">'.cplang('edit').'</a>
  12.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=move&catid='.$value['catid'].'">'.cplang('portalcategory_move').'</a>
  13.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=delete&catid='.$value['catid'].'">'.cplang('delete').'</a>
  14.                 <a href="'.ADMINSCRIPT.'?action=diytemplate&operation=perm&targettplname=portal/list_'.$value['catid'].'">'.cplang('portalcategory_blockperm').'</a></td>
  15.                 <td><a href="'.ADMINSCRIPT.'?action=article&operation=list&&catid='.$value['catid'].'">'.cplang('portalcategory_articlemanagement').'</a>
  16.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=perm&catid='.$value['catid'].'">'.cplang('portalcategory_articleperm').'</a>'.$publish.'</td></tr>';
  17.                 for($i=0,$L=count($value['children']); $i<$L; $i++) {
  18.                         $return .= showcategoryrow($value['children'][$i], 4, $i==$L-1);
  19.                 }
  20.         }elseif($level == 2) {
  21.                 $return = '<tr class="hover" id="cat'.$value['catid'].'"><td> </td><td class="td25"><input type="text" class="txt" name="neworder['.$value['catid'].']" value="'.$value['displayorder'].'" /></td><td><div class="board" style="margin-left:55px;" >'.
  22.                 '<input type="text" class="txt" name="name['.$value['catid'].']" value="'.$value['catname'].'" />'.
  23.                 '<a class="addchildboard" href="'.ADMINSCRIPT.'?action=portalcategory&operation=add&upid='.$value['catid'].'">增加四级频道</a></div>'.
  24.                 '</td><td>'.$value['articles'].'</td>'.
  25.                 '<td>'.(empty($value['disallowpublish']) ? cplang('yes') : cplang('no')).'</td>'.
  26.                 '<td>'.(!empty($value['allowcomment']) ? cplang('yes') : cplang('no')).'</td>'.
  27.                 '<td>'.(empty($value['closed']) ? cplang('yes') : cplang('no')).'</td>'.
  28.                 '<td><input class="radio" type="radio" name="newsetindex" value="'.$value['catid'].'" '.($value['caturl'] == $_G['setting']['defaultindex'] ? 'checked="checked"':'').' /></td>'.
  29.                 '<td><a href="'.$value['caturl'].'" target="_blank">'.cplang('view').'</a>
  30.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=edit&catid='.$value['catid'].'">'.cplang('edit').'</a>
  31.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=move&catid='.$value['catid'].'">'.cplang('portalcategory_move').'</a>
  32.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=delete&catid='.$value['catid'].'">'.cplang('delete').'</a>
  33.                 <a href="'.ADMINSCRIPT.'?action=diytemplate&operation=perm&targettplname=portal/list_'.$value['catid'].'">'.cplang('portalcategory_blockperm').'</a></td>
  34.                 <td><a href="'.ADMINSCRIPT.'?action=article&operation=list&&catid='.$value['catid'].'">'.cplang('portalcategory_articlemanagement').'</a>
  35.                 <a href="'.ADMINSCRIPT.'?action=portalcategory&operation=perm&catid='.$value['catid'].'">'.cplang('portalcategory_articleperm').'</a>'.$publish.'</td></tr>';
  36.                 for($i=0,$L=count($value['children']); $i<$L; $i++) {
  37.                         $return .= showcategoryrow($value['children'][$i], 3, $i==$L-1);
  38.                 }
复制代码
完成
这样就支持五级分类了

 楼主| JustObserver 发表于 2012-8-10 11:29:58 | 显示全部楼层
不错哦
回复

使用道具 举报

简单纯粹 发表于 2012-8-10 11:31:22 | 显示全部楼层
好东西 必须顶!
回复

使用道具 举报

 楼主| JustObserver 发表于 2012-8-10 15:35:09 | 显示全部楼层
本帖最后由 JustObserver 于 2012-8-10 15:36 编辑

发现用以上方法改完之后无法发布文章
需要再修改一个文件 source\function\function_portalcp.php

查找
  1. $select .= "<option value="{$category[$catid2][catid]}"$selected>---- {$category[$catid2][catname]}</option>";
复制代码
在下面增加
  1.                                                 if($category[$catid2]['children']) {
  2.                                                         foreach ($category[$catid2]['children'] as $catid3) {
  3.                                                                 $selected = ($current && $current==$catid3) ? 'selected="selected"' : '';
  4.                                                                 $select .= "<option value="{$category[$catid3][catid]}"$selected>------ {$category[$catid3][catname]}</option>";
  5.                                                         }
  6.                                                 }
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-9-28 19:24 , Processed in 0.238442 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表