// Remove menus that have no accessible submenus and require privs that the user does not have.
// Run re-parent loop again.
foreach ( $menu as $id => $data ) {
+ if ( ! current_user_can($data[1]) )
+ $_wp_menu_nopriv[$data[2]] = true;
+
// If submenu is empty...
if ( empty($submenu[$data[2]]) ) {
// And user doesn't have privs, remove menu.
- if ( ! current_user_can($data[1]) ) {
- $_wp_menu_nopriv[$data[2]] = true;
+ if ( isset( $_wp_menu_nopriv[$data[2]] ) ) {
unset($menu[$id]);
}
}