Jadi saya mengalami beberapa masalah dengan ini dan saya tidak bisa melihat mengapa. Saya hanya perlu peran khusus yang dapat mengakses blog di bagian belakang.
Saya telah menambahkan jenis posting baru dengan jenis Kemampuan blog
dan peran pengguna baru dengan semua batasan yang akan memungkinkan admin mengakses pengguna untuk menambah / mengedit jenis posting kustom. Ini berfungsi untuk admin dan mereka dapat mengakses jenis posting di bagian belakang. Namun pengguna peran khusus saya tidak bisa masuk ke bagian belakang sama sekali.
Jenis tulisan args of note
"capability_type" => 'blog',
"map_meta_cap" => true,
Mendaftar peran
function add_blog_manager_role(){
add_role(
'blog_manager',
'Blog Manager',
array(
'read' => true,
'edit_posts' => false,
'delete_posts' => false,
'publish_posts' => false,
'upload_files' => true
)
);
}
add_action( 'admin_init', 'add_blog_manager_role', 4 );
Tambahkan Caps
function add_blog_role_caps() {
$roles = array('blog_manager', 'editor','administrator');
foreach($roles as $the_role) {
$role = get_role($the_role);
$role->add_cap( 'read' );
$role->add_cap( 'read_blog');
$role->add_cap( 'read_private_blog' );
$role->add_cap( 'edit_blog' );
$role->add_cap( 'edit_others_blog' );
$role->add_cap( 'edit_published_blog' );
$role->add_cap( 'publish_blog' );
$role->add_cap( 'delete_others_blog' );
$role->add_cap( 'delete_private_blog' );
$role->add_cap( 'delete_published_blog' );
}
}
add_action('admin_init', 'add_blog_role_caps', 5 );
Saya sudah googeling dengan panik mencoba mencari penyebabnya. Saya sudah mencoba dengan bentuk jamak, non jamak, mencoba menambahkan kemampuan ke args jenis posting. Namun saya tidak pernah bisa masuk ke belakang. Saya tidak punya kode lain dalam tema yang mungkin mengeluarkan pengguna dari admin (saya menghapus kode saya sendiri yang menendang mereka saat menguji ini)
Sunting Di sini Anda dapat melihat dump dari kemampuan blog_manager dari database, ada sedikit pengujian BS yang tersisa di sana, tetapi yang seharusnya tidak menghentikan mereka untuk dapat login dari apa yang saya ketahui.
'blog_manager' => array (
'name' => 'Blog Manager',
'capabilities' => array (
'read' => true,
'edit_posts' => false,
'delete_posts' => false,
'publish_posts' => false,
'upload_files' => true,
'read_blog' => true,
'read_private_blog' => true,
'edit_blog' => true,
'edit_others_blog' => true,
'edit_published_blog' => true,
'publish_blog' => true,
'delete_others_blog' => true,
'delete_private_blog' => true,
'delete_published_blog' => true,
'blog' => true,
'read_private_blogs' => true,
'edit_blogs' => true,
'edit_others_blogs' => true,
'edit_published_blogs' => true,
'publish_blogs' => true,
'delete_others_blogs' => true,
'delete_private_blogs' => true,
'delete_published_blogs' => true,
'delete_blogs' => true,
'delete_blog' => true,
),
)