1 回答

TA貢獻1799條經驗 獲得超8個贊
我能夠通過使用下面的代碼來解決它。
$args = array(
'labels' => $labels,
'description' => 'Custom post',
'public' => true,
'menu_position' => 5,
'supports' => array('title', 'editor', 'thumbnail', 'author', 'excerpt', 'comments', 'custom-fields'),
'has_archive' => true,
'show_in_rest' => true,
'rest_base' => 'letters',
'capabilities' => array(
'edit_post' => 'edit_letter',
'edit_posts' => 'edit_letters',
'publish_posts' => 'publish_letters',
'read_post' => 'read_letter',
'delete_post' => 'delete_letter'
),
);
register_post_type('letter', $args);
然后將這些功能添加到所需的角色。
function new_caps()
{
$new_role = get_role('new_role');
$new_role->add_cap('edit_letter', true);
$new_role->add_cap('edit_letters', true);
$new_role->add_cap('publish_letters', true);
$new_role->add_cap('read_letter', true);
$new_role->add_cap('delete_letter', true);
$admins = get_role( 'administrator' );
$admins->add_cap('edit_letter', true);
$admins->add_cap('edit_letters', true);
$admins->add_cap('publish_letters', true);
$admins->add_cap('read_letter', true);
$admins->add_cap('delete_letter', true);
}
add_action('init', 'new_caps', 11);
- 1 回答
- 0 關注
- 163 瀏覽
添加回答
舉報