Пользовательская таксономия - настройка доступа на основе роли или возможностей
Я только что узнал о пользовательских таксономиях для Wordpress. Как можно ограничить доступ моих пользователей к использованию таксономии. Например, я создал таксономию featured
и я только хочу, чтобы редакторы и вышеупомянутые роли могли добавлять посты в эту таксономию.
Как мне установить уровень доступа? Либо на основе роли пользователя или возможностей, оба работают для меня.
Вот код, который я использую для моей таксономии:
function add_custom_taxonomies() {
// Add new "Featured" taxonomy to Posts
register_taxonomy('featured', 'post', array(
// Hierarchical taxonomy (like categories)
'hierarchical' => true,
// This array of options controls the labels displayed in the WordPress Admin UI
'labels' => array(
'name' => _x( 'Featured', 'taxonomy general name' ),
'singular_name' => _x( 'Featured', 'taxonomy singular name' ),
'search_items' => __( 'Search Featured' ),
'all_items' => __( 'All Featured' ),
'parent_item' => __( 'Parent Featured' ),
'parent_item_colon' => __( 'Parent Featured:' ),
'edit_item' => __( 'Edit Featured' ),
'update_item' => __( 'Update Featured' ),
'add_new_item' => __( 'Add New Featured' ),
'new_item_name' => __( 'New Featured Name' ),
'menu_name' => __( 'Featured' ),
),
// Control the slugs used for this taxonomy
'rewrite' => array(
'slug' => 'featured', // This controls the base slug that will display before each term
'with_front' => false, // Don't display the category base before "/locations/"
'hierarchical' => true // This will allow URL's like "/locations/boston/cambridge/"
),
));
}
add_action( 'init', 'add_custom_taxonomies', 0 );
1 ответ
Решение
Будет ли достаточно удалить метабокс со страницы редактирования сообщения? Если так, дайте это вихрем:
function remove_featured_meta() {
if (!current_user_can('moderate_comments')){
remove_meta_box( 'featureddiv', 'post', 'side' );
}
}
add_action( 'admin_menu' , 'remove_featured_meta' );
Вы можете заполнить условный оператор так, чтобы соответствующая возможность соответствовала роли пользователя, которой вы хотите ограничить доступ к таксономии.