DISCUZ后台添加导航栏和左侧菜单栏
1 Q! d+ q3 _2 d" e4 b' U7 h* \discuz后台不存在模板文件,所以我们无法通过追源码的方式来添加导航栏,下面介绍下discuz后台添加导航栏的方法: ! d4 F: b. b6 P% ~. q
- J# V! p$ f" Z1 R4 }* S需要用到的文件就两个:
7 m, w9 c$ F1 p% {' m0 j3 N0 I( K* Y; n. j3 q5 c
(1)\source\admincp\admincp_menu.php + ^$ O2 M3 w, T! ~: D; Y
: i& g: I2 s# l9 w, v1 h(2)\source\language\lang_admincp_menu.php - n% i1 `6 h9 v4 J
. M. V5 g4 n$ Z
1 _* D: G1 u' ]1 H3 H9 C+ f: C# z( ]5 H& u9 m8 `2 u7 c, T
admincp_menu.php中的代码: $ o/ y, Q, n4 E* {
! M/ g, B9 A' S4 z- $topmenu = array ( v- `; ~$ F" y$ E2 ?
- 'index' => '', 0 [# ?' f. x+ V* k3 z
- 'global' => '', 3 E' @6 G% d* k' \0 e4 p, J
- 'style' => '', 0 a" c) |8 l7 r( }5 d9 r) a
- 'topic' => '', 5 T( E. b! ~* m: A5 A
- 'user' => '', % K3 o$ A, u5 A/ F& f) F* b" J
- 'portal' => '',
: h* \4 ~9 n/ g C4 I - 'forum' => '', 5 m. n+ Z U* v6 v* O P! t) `4 O
- 'group' => '', . t# X) f/ n3 H4 T
- 'safe' => '', / {) c$ {- r7 {# @
- 'extended' => '',
- X4 X! n' B: V - 'plugin' => '', p. t9 T: u) X' S! X4 h
- 'tools' => '',
6 X2 b6 ^8 E* E! A4 l/ n, ? - 'match' => '', //因为整个导航栏是从数组中循环出来的,在这里做一个初始化,所以我在这新添加一条作为新添加的导航按钮
: Y+ r4 W1 A, ?) g9 t4 C - );
复制代码 根据上面添加的导航,给他添加左侧的菜单:
5 z. }! z6 j3 ^8 W2 _- $menu['match'] = array( % v7 W. D8 f) i9 P
- array('menu_work_list', 'match_main_list'), //数组中第一个值就是菜单名称,第二个值会在后面详细解释
}: i [" A% T! E3 V - array('menu_work_add', 'match_main_add'),//每一个数组都是一个菜单按钮,可以写很多8 F: e7 b9 m; L( y
- );
复制代码 lang_admincp_menu.php中代码:
3 V6 v9 H8 K) o7 }+ X: l2 b) x5 ^9 G在 $lang = array() 数组中添加如下代码:9 c) @" `; p% p5 S: a7 b
- 'header_match' => '作品大赛', //给我们添加的导航栏( match )设置中文名称
* h7 G$ t6 E8 ?! |( R# A+ h -
7 w- U: D8 `' G! ?4 s& h; d" T - 'menu_work_list' => '作品列表', //对应上面数组中的第一个值,给菜单设置对应的中文名称
" | Z! a% `% l) \. W m; s( e& J - 'menu_work_add' => '添加作品', //对应上面数组中的第一个值,给菜单设置对应的中文名称
复制代码 访问浏览器,会出现如下信息:
4 y- f) s- B2 s) h, Q6 {
7 @6 S5 @: e q ^1 |7 r- Y/ o7 I这里需要在 admin.php 文件中 $admincp_actions_normal 数组中添加 ‘match’,就OK了。
% W& w6 }3 I) p' L" \$ N0 s! {然后访问
到这里,导航就添加完成了!!! + O. l3 k }' D6 }& ^6 Q6 g
接下来我们再说一下上面数组中的第二个值有什么作用? 菜单栏添加完成后,需要给他一个链接,将其信息显示到右侧 那么当我把鼠标移到"作品列表"上时,浏览器左下角会出现 URL 路径,注意圈起来的部分
这时便发现数组中的第二个值 “match_main_list” ,通过下划线区分开,每个值都对应URL路径中圈起来的值, 对应分别是: action --------对应-------- match operation --------对应-------- main do --------对应-------- list (action、operation、do是DISCUZ默认的) 由此我们可以得出:上面数组中的第二个值是给菜单按钮提供URL路径 另注: 如图所示:
3 S* y' s! v) c8 t6 {0 P
圈起来的$action就是我们的URL地址传过来的action的值,下面的路径便是我们新增的菜单访问的位置,我们要在 /source/admincp/目录下创建一个PHP文件(文件名要按照图中那样的格式来起名),php文件中输出的内容就会显示在右侧()。 7 Z, y# Q0 Y7 U7 T) |, {' v: ^# o- d
|