WordPress 后台屏幕右上角有两个小工具:显示选项(Screen Options)和帮助(Help),作为定制化 Dashboard 的一部分,某些时候需要将这两个小东西隐藏,隐藏的方法如下。

隐藏显示选项

在主题的 functions.php 中写如下代码

function remove_screen_options(){ return false;}
add_filter('screen_options_show_screen', 'remove_screen_options');

对 Editor(编辑)一下级别的用户隐藏显示选项

function remove_screen_options(){
if( !current_user_can('publish_pages') )
return false;
return true;
}
add_filter('screen_options_show_screen', 'remove_screen_options');

隐藏帮助选项卡

在主题的 functions.php 中添加

add_filter( 'contextual_help', 'wpse50723_remove_help', 999, 3 );
function wpse50723_remove_help($old_help, $screen_id, $screen){
$screen->remove_help_tabs();
return $old_help;
}

兼容性

WP 3.4+

两种方法都能正常工作

WP 3.3+ <WP 3.4

两种方法都起作用,但移除 screen options 的同时也会是所有的 Dashboard Widgets 显示出问题,需要添加一些额外的样式修复

WP 3.0+ <WP 3.3

remove_help_tabs() 未定义,所以要使用另一种方式

add_filter('contextual_help', '__return_false');

这只是移除了帮助信息,帮助那个 menu 链接还是无法移除,只能用 CSS 的 display:none 来搞定了

移除 screen options 同样会导致 Dashboard Widgets 显示错误,需要添加额外样式修复。只能说 WordPress 这几个版本 Dashboard 布局虽然变化不大,但 div 的 class 却变了不少。