网站地图    收藏   

主页 > 后端 > wordpress教程 >

WordPress后台删除不需要的侧边栏菜单 - WordPress

来源:自学PHP网    时间:2014-11-28 23:42 作者: 阅读:

[导读] 核心部分是一个函数remove_menus(),然后通过WordPress的动作接口函数add_action来执行remove_menus函数,在remove_menus函数中,通过$restricted数组来定义需要删除哪些菜单项,以上$restricted数组提供了...

WordPress后台删除不需要的侧边栏菜单

具体实现办法是在当前主题的functions.php中添加以下代码:

  1. function remove_menus() { 
  2. global $menu
  3. $restricted = array(__(‘Dashboard’), __(‘Posts’), __(‘Media’), __(‘Links’), __(‘Pages’), __(‘Appearance’), __(‘Tools’), __(‘Users’), __(‘Settings’), __(‘Comments’), __(‘Plugins’)); 
  4. end ($menu); 
  5. while (prev($menu)){ 
  6. $value = explode(‘ ‘,$menu[key($menu)][0]); 
  7. if(in_array($value[0] != NULL?$value[0]:”" , $restricted)){unset($menu[key($menu)]);} 
  8. if ( is_admin() ) { 
  9. // 删除左侧菜单 
  10. add_action(‘admin_menu’, ‘remove_menus’); 

自定义要去除的顶级菜单

以上代码核心部分是一个函数remove_menus(),然后通过WordPress的动作接口函数add_action来执行remove_menus函数,在remove_menus函数中,通过$restricted数组来定义需要删除哪些菜单项,以上$restricted数组提供了全部菜单项,也就是说如果你全部将以上代码不做修改地复制到functions.php,那你的WordPress后台就没有任何菜单了,你应该根据实际需要去除菜单,下面讲讲$restricted各个数组项对应的菜单:

__(‘Dashboard’) : 控制板菜单

__(‘Posts’) : 文章

__(‘Media’) : 媒体

__(‘Links’) : 链接

__(‘Pages’) : 页面

__(‘Comments’) : 评论

__(‘Appearance’) : 外观

__(‘Plugins’) : 插件

__(‘Users’) : 用户

__(‘Tools’) : 工具

__(‘Settings’) : 设置

例如你只想去除评论和工具菜单,你只需改写以上代码第3行的$restricted数组代码如下:

$restricted = array(__(‘Comments’), __(‘Tools’));

根据用户角色去除菜单

wordpress共有5种角色:administrator(管理员) editor(编辑) author(作者) contributor(投稿者) subscriber(订阅者)

判断角色方法举例:

if(!current_user_can(‘administrator’)){……} //当不是管理员

去除非管理员用户后台一级菜单和二级菜单举例,在主题functions.php中添加如下代码:

  1. /*not_administrator_remove_menu_page*/ 
  2. function n_a_remove_menu_page(){ 
  3. remove_submenu_page( ‘edit.php’, ‘post-new.php’ ); //移除“文章”下的“写文章” 
  4. remove_menu_page(‘tools.php’); 
  5. remove_menu_page(‘edit-comments.php’); 
  6. if(!current_user_can(‘administrator’) && is_admin()){ 
  7. add_action(‘admin_menu’, ‘n_a_remove_menu_page’); 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论