2013-09-23 2 views
1

맞춤 분류가 있는데, 현재 사용자가 관리자 인 경우 대시 보드에 표시하는 방법이 있습니까? 이 라인을 따라 뭔가가 필요하지만 작동하지 않습니다.맞춤 분류를 사용하면 관리자 만 show_ui 할 수 있습니까?

global $current_user; 
global $showui; 
    if($current_user->roles[0] == 'administrator') { 
     $showui = true; 
    } 
    else { 
      $showui = false; 
      } 
//Custom Industry Taxonomy Code (For Projects CPT) 
register_taxonomy('servicecategory', 
    array (0 => 'servicecategory',), 
    array('hierarchical' => true, 
      'label' => 'Specialties', 
      'show_ui' => $showui, 
      'query_var' => true, 
      'rewrite' => true, 
      'show_in_nav_menus' => true, 
      'show_admin_column' => true,     
      'singular_label' => 'Menu' 
     ) 
    ); 

답변

3

이 택 소노 미를 관리 할 수있는 이름을 먼저 지정할 수 있습니다. 다음과 같이 관리자에 기능을 추가 :

register_taxonomy('servicecategory', 
    array (0 => 'servicecategory',), 
    array('hierarchical' => true, 
      'label' => 'Specialties', 
      'show_ui' => true, 
      'query_var' => true, 
      'rewrite' => true, 
      'show_in_nav_menus' => true, 
      'show_admin_column' => true,     
      'singular_label' => 'Menu', 
      'capabilities' => array (//giving a name to the capability 
       'manage_terms' => 'manage_servicecategory', 
       'edit_terms' => 'manage_servicecategory', 
       'delete_terms' => 'manage_servicecategory', 
       'assign_terms' => 'manage_servicecategory' 
      ) 
    ) 
); 
$role = get_role('administrator'); 
$role->add_cap("manage_servicecategory"); 
+1

이것은 관리자 만 편집 할 수있는 경우를 해결하지만 관리자가 아닌 사람이 완전히 숨길 수있는 방법을 알고 있습니까? – TripsLeft

+0

@TripsLeft 당신은이 마지막 물건을 알아 냈습니까? (비 관리자로부터 완전히 숨김). 답변도 알고 싶습니다 :) – trainoasis

0

안된를하지만,이 관리자

'show_ui' => current_user_can('update_core') 

이 워드 프레스를 업데이트하는 capabilites와 만에 UI를 제한하기위한 표시 만이 추가 시도 항상 관리자가 될 것입니다.