Wordpress工具栏的隐藏和显示

十度 wordpress 2015年12月23日 收藏

Admin Bar系WordPress 3.1之后增加的一项功能,但在利用WordPress制作企业网站时,可能你会发现Admin Bar对于客户来讲并没有多大作用,也或者你发现Admin Bar不够专业,缺少制作方的一些标识;


有了上面的需求,就来动动手吧。

1、删除Admin Bar

add_filter( 'show_admin_bar', '__return_false' );

将以上代码添加到当前皮肤的functions.php文件中,即可屏蔽Admin Bar的显示;


但有时候什么东西都一刀切也有弊端,因为也取消了自己操作方面的便利性;

比如我在用WordPress给客户制作企业网站时,通常会另外指派一个“编辑者”的身份用于客户日常内容维护;我只想针对客户才删除Admin Bar,而如果依上面的代码,管理员也享受不了Admin Bar带来的便利了,那该怎么做呢?好办,增加个判断!

if ( !current_user_can('administrator') && is_admin() ) {
    add_filter( 'show_admin_bar', '__return_false' );
}

2、定制Admin Bar

上面讲的是如何删除Admin Bar,但可能你只是不需要Admin Bar里的某些项目或只是觉得Admin Bar显得不够简洁,比如WordPress的LOGO;

if ( !current_user_can('administrator') && is_admin() ) {
    add_action('wp_before_admin_bar_render', 'naruco_admin_bar_menu');
}
 
function naruco_admin_bar_menu(){
    global $wp_admin_bar;
    $wp_admin_bar->remove_menu('wp-logo');
    $wp_admin_bar->remove_menu('about');
    $wp_admin_bar->remove_menu('wporg');
    $wp_admin_bar->remove_menu('documentation');
    $wp_admin_bar->remove_menu('support-forums');
    $wp_admin_bar->remove_menu('feedback');
    $wp_admin_bar->remove_menu('view-site');
 
    $wp_admin_bar->remove_menu('new-content'); //新建
    $wp_admin_bar->remove_menu('comments');  //评论
    $wp_admin_bar->remove_menu('appearance'); //皮肤
    $wp_admin_bar->remove_menu('updates'); //插件更新信息
     
    $wp_admin_bar->add_menu(array(
        'id' => 'about-naruco',
        'title' => '@ 手册网',
        'href' => 'http://www.shouce.ren/' //添加制作方的链接
    ));
}

复制代码放于functions.php后看看是不是简洁多了?!呵呵~