牛骨文教育服务平台(让学习变的简单)
博文笔记

DISCUZ后台添加导航栏和左侧菜单栏

创建时间:2016-12-15 投稿人: 浏览次数:640

discuz后台不存在模板文件,所以我们无法通过追源码的方式来添加导航栏,下面介绍下discuz后台添加导航栏的方法:

需要用到的文件就两个:

(1)sourceadmincpadmincp_menu.PHP

(2)sourcelanguagelang_admincp_menu.php    


admincp_menu.php中的代码:

[php] view plain copy
  1. $topmenu = array (                                                                        
  2.     "index" => "",                                                                              
  3.     "global" => "",                                                                             
  4.     "style" => "",                                                                                
  5.     "topic" => "",                                                                               
  6.     "user" => "",                                                                               
  7.     "portal" => "",                                                                             
  8.     "forum" => "",                                                                             
  9.     "group" => "",                                                                              
  10.     "safe" => "",                                                                                   
  11.     "extended" => "",                                                                         
  12.     "plugin" =>  "",                                  
  13.     "tools" => "",                                                                                
  14.         "match" => "",    //因为整个导航栏是从数组中循环出来的,在这里做一个初始化,所以我在这新添加一条作为新添加的导航按钮                                                                       
  15. );  

根据上面添加的导航,给他添加左侧的菜单:

[php] view plain copy
  1. $menu["match"] = array(    
  2.         array("menu_work_list", "match_main_list"),     //数组中第一个值就是菜单名称,第二个值会在后面详细解释  
  3.         array("menu_work_add", "match_main_add"),//每一个数组都是一个菜单按钮,可以写很多  
  4. );  


lang_admincp_menu.php中代码:

在  $lang = array() 数组中添加如下代码: [php] view plain copy
  1. "header_match" => "作品大赛",            //给我们添加的导航栏( match )设置中文名称  
  2.       
  3.         "menu_work_list" => "作品列表",          //对应上面数组中的第一个值,给菜单设置对应的中文名称  
  4.         "menu_work_add" => "添加作品",           //对应上面数组中的第一个值,给菜单设置对应的中文名称  

访问浏览器,会出现如下信息:

这里需要在 admin.php 文件中 $admincp_actions_normal 数组中添加 ‘match’,就OK了。


然后访问


到这里,导航就添加完成了!!!


接下来我们再说一下上面数组中的第二个值有什么作用?

菜单栏添加完成后,需要给他一个链接,将其信息显示到右侧

那么当我把鼠标移到"作品列表"上时,浏览器左下角会出现 URL 路径,注意圈起来的部分

这时便发现数组中的第二个值  “match_main_list” ,通过下划线区分开,每个值都对应URL路径中圈起来的值,

对应分别是:

action --------对应-------- match

operation --------对应-------- main

do --------对应-------- list

(action、operation、do是DISCUZ默认的)

由此我们可以得出:上面数组中的第二个值是给菜单按钮提供URL路径



另注:

如图所示:

圈起来的$action就是我们的URL地址传过来的action的值,下面的路径便是我们新增的菜单访问的位置,我们要在 /source/admincp/目录下创建一个PHP文件(文件名要按照图中那样的格式来起名),php文件中输出的内容就会显示在右侧()。




以上信息属个人总结,本人测试是没有问题的

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。