| | |
| DISCUZ后台添加导航栏和左侧菜单栏
% L2 A4 H" X5 }& ~discuz后台不存在模板文件,所以我们无法通过追源码的方式来添加导航栏,下面介绍下discuz后台添加导航栏的方法:
H/ i8 H6 y& A
5 @; p+ J( G- y: `4 f: @需要用到的文件就两个: / X9 a2 A: Q5 _' ~
+ G/ D9 N1 H% @4 d4 H1 ^8 {5 d(1)\source\admincp\admincp_menu.php 1 M) m! a6 E0 w. L) x# b
, e% ^$ y$ l: N0 X4 Y3 j. M- G(2)\source\language\lang_admincp_menu.php
$ G* I" s7 L1 \" ?: ^
; W) J Q3 j8 `6 o# k7 R: v3 ?' @& K) p- q4 v
4 I$ [5 G2 |$ Nadmincp_menu.php中的代码:
# x9 c: E+ W+ z1 C7 Z# C1 {+ o; [% D) i. A' t5 k6 O- x, j& ?/ f' [' W
- $topmenu = array (
3 [+ T& |+ X4 q6 Q' A, J" }1 ` - 'index' => '',
! P! L- Q }6 e1 {1 q1 R' B0 U) `6 K - 'global' => '', 9 y/ t# ]( d; Y( U8 ?! n
- 'style' => '', 8 W1 m3 T$ `% _# U ~" \: d
- 'topic' => '',
$ s8 A. i6 G" S, h3 i. p/ J$ R1 c - 'user' => '',
8 |: i. y; I0 x i5 s( h; p+ g - 'portal' => '',
% o2 K6 b! e% V' j1 L \! T1 c# L - 'forum' => '',
1 M, ^! ?2 h! [7 {) j! c* p, @ - 'group' => '',
1 R. t" c6 ]# w2 V8 {0 V. L" |* o - 'safe' => '',
7 v t* U: C; r1 j c - 'extended' => '', 7 M) @; h2 k7 ~' M3 }/ E/ D
- 'plugin' => '', - G" f/ Y9 r4 ^: P$ y9 K
- 'tools' => '',
" S7 l/ O" T7 a( b) `. H - 'match' => '', //因为整个导航栏是从数组中循环出来的,在这里做一个初始化,所以我在这新添加一条作为新添加的导航按钮 - O; d4 A5 |- Z4 O% c; [ f# P
- );
复制代码 根据上面添加的导航,给他添加左侧的菜单:! w7 o6 b8 s' T. o. T# @2 `
- $menu['match'] = array( ( V. [/ R: D7 y" M. E4 E& y
- array('menu_work_list', 'match_main_list'), //数组中第一个值就是菜单名称,第二个值会在后面详细解释
- j6 o4 T- p" K3 N4 V - array('menu_work_add', 'match_main_add'),//每一个数组都是一个菜单按钮,可以写很多
& n1 ~0 a0 i- n4 f5 e+ h - );
复制代码 lang_admincp_menu.php中代码:8 V5 n! d' L' }# h! h7 R/ y6 ~6 u
在 $lang = array() 数组中添加如下代码:- o/ V9 D% H/ g* D, @ O
- 'header_match' => '作品大赛', //给我们添加的导航栏( match )设置中文名称
$ g* x/ V" ~4 k - ' R) \; o& Y- H( N) J
- 'menu_work_list' => '作品列表', //对应上面数组中的第一个值,给菜单设置对应的中文名称
0 {8 r& ` y* U - 'menu_work_add' => '添加作品', //对应上面数组中的第一个值,给菜单设置对应的中文名称
复制代码 访问浏览器,会出现如下信息:
* [8 w5 _: X0 |6 @
5 a1 D9 _* I" Z3 ]: M, D$ {' ~
这里需要在 admin.php 文件中 $admincp_actions_normal 数组中添加 ‘match’,就OK了。 . j' g7 N! G9 _( n. u( d2 r
然后访问
到这里,导航就添加完成了!!! 6 Y/ Y+ N9 B0 d: R. @; W; J$ \
接下来我们再说一下上面数组中的第二个值有什么作用? 菜单栏添加完成后,需要给他一个链接,将其信息显示到右侧 那么当我把鼠标移到"作品列表"上时,浏览器左下角会出现 URL 路径,注意圈起来的部分
这时便发现数组中的第二个值 “match_main_list” ,通过下划线区分开,每个值都对应URL路径中圈起来的值, 对应分别是: action --------对应-------- match operation --------对应-------- main do --------对应-------- list (action、operation、do是DISCUZ默认的) 由此我们可以得出:上面数组中的第二个值是给菜单按钮提供URL路径 另注: 如图所示:
& v$ e+ H0 {9 \
圈起来的$action就是我们的URL地址传过来的action的值,下面的路径便是我们新增的菜单访问的位置,我们要在 /source/admincp/目录下创建一个PHP文件(文件名要按照图中那样的格式来起名),php文件中输出的内容就会显示在右侧()。
0 t' \5 K& i `! ^ L" _
| |
| | |