王尘宇王尘宇

研究百度干SEO做推广变成一个被互联网搞的人

WordPress背景删除不需要的侧边栏菜单

wordpress的背景说简朴也简朴,说庞杂也庞杂。。。为了轻易,我们能够想办法经由过程技术手段来对背景的左边栏举行删除或隐蔽,自然是也能够依据差别的用户角色来定义背景侧栏菜单的删减,那末下面就直接说中心教程了!

  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(strpos($value[0], '<') === FALSE) {

  8.       if(in_array($value[0] != NULL ? $value[0]:"" , $restricted)){

  9.         unset($menu[key($menu)]);

  10.       }

  11.     }

  12.     else {

  13.       $value2 = explode('<', $value[0]);

  14.       if(in_array($value2[0] != NULL ? $value2[0]:"" , $restricted)){

  15.         unset($menu[key($menu)]);

  16.       }

  17.     }

  18.   }

  19. }

  20. if ( is_admin() ) {

  21.   // 删除左边菜单

  22.   add_action('admin_menu', 'remove_menus');

  23. }

以上代码中心部份是一个函数remove_menus(),然后经由过程wordpress的行动接口函数add_action来实行remove_menus函数。在remove_menus函数中,经由过程$restricted数组来定义须要删除哪些菜单项,以上$restricted数组供应了悉数菜单项,也就是说假如你悉数将以上代码不做修改地复制到functions.php,那你的wordpress背景就没有任何菜单了,你应当依据实际须要去除菜单,下面讲讲$restricted各个数组项对应的菜单:

  1. __('Dashboard') : 控制板菜单

  2. __('Posts') : 文章

  3. __('Media') : 媒体

  4. __('Links') : 链接

  5. __('Pages') : 页面

  6. __('Comments') : 批评

  7. __('Appearance') : 表面

  8. __('Plugins') : 插件

  9. __('Users') : 用户

  10. __('Tools') : 东西

  11. __('Settings') : 设置

比方你只想去除批评和东西菜单,你只需改写以上代码第3行的$restricted数组:

  1. $restricted = array(__('Comments'), __('Tools'));

删除不必要的子菜单

wordpress背景的顶级菜单下面另有子菜单,固然有些子菜单是用不到的,我们也能够将其删除,wordpress 3.1今后的版本只需用到一个函数remove_submenu_page( $menu_slug, $submenu_slug ),这里有两个参数,$menu_slug是子菜单地点顶级菜单的缩略名,$submenu_slug为子菜单的缩略名,那怎样取得这两个缩略名呢?比方,点击顶级菜单设置链接地点相似:

http://example/wp-admin/options-general.php

那末顶级菜单设置的缩略名为options-general.php,也就是去除http://example/wp-admin/后剩下的东西,顺次类推;接着点击顶级菜单设置下面的子菜单隐私,会翻开以下网址:

http://example/wp-admin/options-privacy.php

那末子菜单隐私的缩略名为options-privacy.php,好了,就这么简朴,下面是完成代码,:

  1. function remove_submenu() {

  2.     // 删除"设置"下面的子菜单"隐私"

  3.     remove_submenu_page( 'options-general.php', 'options-privacy.php' );

  4.     // 删除"表面"下面的子菜单"编辑"

  5.     remove_submenu_page( 'themes.php', 'theme-editor.php' );

  6. }

  7. if ( is_admin() ) {

  8.     add_action('admin_init','remove_submenu');

  9. }

依据用户角色去除菜单

假如你想按用户角色来去除响应的侧边栏菜单,那就再做一下用户品级的推断就能够了,给第11行的add_action增加推断,改写成:

  1. function remove_menus() {

  2.     global $menu;

  3.     // 这里$restricted设置了批评和东西菜单

  4.     $restricted = array(__('Comments'), __('Tools'));

  5.     end ($menu);

  6.     while (prev($menu)){

  7.         $value = explode(' ',$menu[key($menu)][0]);

  8.         if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}

  9.     }

  10. }

  11. function remove_submenu() {

  12.     remove_submenu_page( 'options-general.php', 'options-privacy.php' );

  13. }

  14. global $current_user;

  15. get_currentuserinfo();

  16. //假如当前用户的品级小于3,那末就删除对应的菜单

  17. if ($current_user->user_level < 3 && is_admin()) {

  18.     add_action('admin_menu', 'remove_menus');

  19.     add_action('admin_init','remove_submenu');

  20. }

在WordPress背景 – 用户那边,管理员能够检察 / 编辑用户的角色,以下是用户角色和其品级的对应关联:

  1. 0 级对应 定阅者

  2. 1 级对应 投稿者

  3. 2 – 4 级对应 作者

  4. 5 – 7 级对应 编辑

  5. 8 – 10 级对应 管理员

WordPress 3.0 以后将逐步弃用用户数字品级,引荐运用户权限,能够用函数current_user_can()来推断用户权限。

运用超简朴的插件

下面引荐一个运用超简朴的插件,不须要任何编码,只需拖拖鼠标就能够完成上面所说的大部份功用。插件名称是:Admin Menu Editor,能够点此前去WordPress官方下载,启用后到设置 – Menu Editor,就能够编辑背景的菜单了,还能够增加外链菜单,能够调解菜单次序等等,剩下的你本身体验吧!

相关文章

评论列表

发表评论:
验证码

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。