WordPress entfernen Fähigkeit Post, Medien vollständig für benutzerdefinierte Rolle

Ich habe eine neue Rolle erstellt. Jetzt möchte ich Post- , Medien- , Einstellungsmöglichkeiten für diese Rolle entfernen. Wie kann ich das erreichen?

Solutions Collecting From Web of "WordPress entfernen Fähigkeit Post, Medien vollständig für benutzerdefinierte Rolle"

Entfernen Sie ein Administratormenü der obersten Ebene:

function custom_menu_page_removing() { remove_menu_page( $menu_slug ); } add_action( 'admin_menu', 'custom_menu_page_removing' ); 

Wenn Sie nur bestimmte Menüelemente entfernen möchten, schließen Sie nur diejenigen ein, die Sie in der function ausblenden möchten. Um Menüs nur für bestimmte Benutzer zu entfernen, können Sie current_user_can () verwenden.

Sie können sich https://codex.wordpress.org/Function_Reference/remove_menu_page ansehen

Würdest du das bitte so versuchen:

 $data = get_userdata( 1 ); // or any other ID where your new role works if ( !empty( $data) ) { $user_caps = $data->allcaps; echo '
' . print_r( $user_caps, true ) . '

'; }

Sie werden die Idee von Fähigkeiten an Ihrem Ende bekommen.

 Array ( [switch_themes] => 1 [edit_themes] => 1 [activate_plugins] => 1 [edit_plugins] => 1 [edit_users] => 1 [edit_files] => 1 [manage_options] => 1 [moderate_comments] => 1 [manage_categories] => 1 [manage_links] => 1 [upload_files] => 1 [import] => 1 [unfiltered_html] => 1 [edit_posts] => 1 [edit_others_posts] => 1 [edit_published_posts] => 1 [publish_posts] => 1 [edit_pages] => 1 [read] => 1 [level_10] => 1 [level_9] => 1 [level_8] => 1 [level_7] => 1 [level_6] => 1 [level_5] => 1 [level_4] => 1 [level_3] => 1 [level_2] => 1 [level_1] => 1 [level_0] => 1 [edit_others_pages] => 1 [edit_published_pages] => 1 [publish_pages] => 1 [delete_pages] => 1 [delete_others_pages] => 1 [delete_published_pages] => 1 [delete_posts] => 1 [delete_others_posts] => 1 [delete_published_posts] => 1 [delete_private_posts] => 1 [edit_private_posts] => 1 [read_private_posts] => 1 [delete_private_pages] => 1 [edit_private_pages] => 1 [read_private_pages] => 1 [delete_users] => 1 [create_users] => 1 [unfiltered_upload] => 1 [edit_dashboard] => 1 [update_plugins] => 1 [delete_plugins] => 1 [install_plugins] => 1 [update_themes] => 1 [install_themes] => 1 [update_core] => 1 [list_users] => 1 [remove_users] => 1 [promote_users] => 1 [edit_theme_options] => 1 [delete_themes] => 1 [export] => 1 [view_query_monitor] => 1 [administrator] => 1 ) 

Dann entferne sie einfach mit diesem Code:

 // Remove a capability from a specific user. $user_id = // The ID of the user to remove the capability from. $user = new WP_User( $user_id ); $user->remove_cap( 'read_private_posts' ); 

aus ref .