I have a "barbershop" custom post type and i want to have a "barber" role in my wordpress. I wrote this code so my barber would have access to write or delete his own barbershop.
// Barbershop Post Type
function register_barbershop() {
$labels = array(
'name' => __('آرایشگاه ها', 'noosh'),
'singular_name' => __('آرایشگاه', 'noosh'),
'add_new' => __('افزودن', 'noosh'),
'add_new_item' => __('افزودن آرایشگاه تازه', 'noosh'),
'edit_item' => __('ویرایش آرایشگاه', 'noosh'),
'new_item' => __('آرایشگاه تازه', 'noosh'),
'view_item' => __('نمایش آرایشگاه', 'noosh'),
'view_items' => __('نمایش آرایشگاه ها', 'noosh'),
'all_items' => __('همه ی آرایشگاه ها', 'noosh'),
);
$args = array(
'labels' => $labels,
'public' => true,
'capability_type' => 'bshop',
'map_meta_cap' => true,
'supports' => array('title', 'editor', 'comments', 'author', 'thumbnail')
);
register_post_type('barbershop', $args);
}
add_action( 'init', 'register_barbershop' );
// Add barber user role
function add_barber() {
$caps = [
'read' => true,
'edit_bshop' => true,
'read_bshop' => true,
'delete_bshop' => true,
'edit_bshops' => true,
'edit_others_bshops' => false,
'publish_bshops' => true,
'read_private_bshops' => true,
'delete_bshops' => true,
'delete_private_bshops' => true,
'delete_published_bshops' => true,
'delete_others_bshops' => false,
'edit_private_bshops' => true,
'edit_published_bshops' => true,
];
add_role( 'barber', 'آرایشگر', $caps );
}
add_action( 'after_setup_theme', 'add_barber' );
But there is one problem, just only my barber has access to this barbershop cpt, not superadmin. I want that my admin can manage the barbershop too, what should i do?