DISCUZ后台添加导航栏和左侧菜单栏
, ^+ m, V: Q" x! I8 Q, Ldiscuz后台不存在模板文件,所以我们无法通过追源码的方式来添加导航栏,下面介绍下discuz后台添加导航栏的方法:
7 [' _& c) v1 ?8 T2 k% u" P% H2 `. j" Y) E, {
需要用到的文件就两个:
& z4 y' V, T# s
% }3 O u8 u2 _ O( [6 P(1)\source\admincp\admincp_menu.php 1 X. L" `3 N: J! Y% A3 ?) X6 M0 {% E
% P! c1 a) r" ]! o2 L+ L: @(2)\source\language\lang_admincp_menu.php ) g2 o7 ]4 v! B
a" k! E2 {+ S3 ~; l6 C( g+ A7 O
% u& H8 t0 h2 M) _9 |
admincp_menu.php中的代码:
. W# M5 u& G0 `: s X
7 C" U& Y0 k1 [- $topmenu = array (
0 K( d5 i- |7 ^. _! `+ } - 'index' => '', 9 L9 V7 I! C1 D3 C4 n
- 'global' => '',
1 `! E" `+ p- W6 w) N - 'style' => '',
/ J( V* r) U- H) U7 m3 @ - 'topic' => '', 8 y# `: ]7 w2 [$ k8 \
- 'user' => '', 7 [! {/ _. P( c9 `/ M
- 'portal' => '',
! W3 X5 h. l" X; ? - 'forum' => '', 9 V/ I7 T* ~" r4 i9 I ?; z
- 'group' => '', / _. c% h% M4 b0 Q/ K
- 'safe' => '',
# E. n& x6 k3 h5 X: W: g - 'extended' => '', 1 x, w7 I% P# |! x2 g7 j9 H0 t
- 'plugin' => '',
0 D/ e$ q( J3 i' `0 S+ I - 'tools' => '',
7 k2 W: x) i) A$ U4 ` E - 'match' => '', //因为整个导航栏是从数组中循环出来的,在这里做一个初始化,所以我在这新添加一条作为新添加的导航按钮
4 Z3 l. U2 Q* W1 I. g T - );
复制代码 根据上面添加的导航,给他添加左侧的菜单:+ L& m; _/ u+ N% S9 G v
- $menu['match'] = array( 2 O: Q& [: p$ f3 s# B
- array('menu_work_list', 'match_main_list'), //数组中第一个值就是菜单名称,第二个值会在后面详细解释
- M" z) @: }3 \1 g( o7 E# P' G - array('menu_work_add', 'match_main_add'),//每一个数组都是一个菜单按钮,可以写很多
( H$ A$ |2 J8 U3 ~& y7 H; s - );
复制代码 lang_admincp_menu.php中代码:9 E/ R2 T' B' A8 x
在 $lang = array() 数组中添加如下代码:' L' g$ H, m, J
- 'header_match' => '作品大赛', //给我们添加的导航栏( match )设置中文名称( @6 d7 U+ [/ \9 d
-
7 `9 E7 G$ R: o* ^ - 'menu_work_list' => '作品列表', //对应上面数组中的第一个值,给菜单设置对应的中文名称0 U7 Z3 t9 Q! Q1 A" s
- 'menu_work_add' => '添加作品', //对应上面数组中的第一个值,给菜单设置对应的中文名称
复制代码 访问浏览器,会出现如下信息:& a: v6 ~; F% A$ o( Y% t
$ m6 ]. u6 T/ d* f6 L这里需要在 admin.php 文件中 $admincp_actions_normal 数组中添加 ‘match’,就OK了。 & }2 S8 D4 l. l
然后访问
到这里,导航就添加完成了!!! 6 S- ~0 S3 |& L5 Q( F& L
接下来我们再说一下上面数组中的第二个值有什么作用? 菜单栏添加完成后,需要给他一个链接,将其信息显示到右侧 那么当我把鼠标移到"作品列表"上时,浏览器左下角会出现 URL 路径,注意圈起来的部分
这时便发现数组中的第二个值 “match_main_list” ,通过下划线区分开,每个值都对应URL路径中圈起来的值, 对应分别是: action --------对应-------- match operation --------对应-------- main do --------对应-------- list (action、operation、do是DISCUZ默认的) 由此我们可以得出:上面数组中的第二个值是给菜单按钮提供URL路径 另注: 如图所示:
6 P7 C' A4 Q9 j5 l+ }圈起来的$action就是我们的URL地址传过来的action的值,下面的路径便是我们新增的菜单访问的位置,我们要在 /source/admincp/目录下创建一个PHP文件(文件名要按照图中那样的格式来起名),php文件中输出的内容就会显示在右侧()。 ! o: R3 `1 A* O$ t- ^8 m7 U9 Y
|