在前端显示特定用户角色的WordPress管理栏

时间:2018-03-26 11:26:40

标签: wordpress function woocommerce

我使用下面的代码段,因为除了管理员之外,WP管理栏还没有在前端显示所有用户角色。但是管理栏现在对所有用户都可见,我只希望它对两个用户角色可见:shop_manager'和'编辑'。那么代码片段应该是什么样的呢?

function admin_bar(){

  if(is_user_logged_in()){
         add_filter( 'show_admin_bar', '__return_true' , 1000 );
    }
}
add_action('init', 'admin_bar' );

1 个答案:

答案 0 :(得分:1)

这应该有效:

function admin_bar(){
  if(is_user_logged_in()){
        $user = wp_get_current_user();
        if ( in_array( 'shop_manager', (array) $user->roles ) || in_array( 'editor', (array) $user->roles ) ) {
            add_filter( 'show_admin_bar', '__return_true' , 1000 );
        }else{
            add_filter( 'show_admin_bar', '__return_false' , 1000 );
        }

    }
}
add_action('init', 'admin_bar' );