WordPress.org

Make WordPress Core

Ticket #27881: menu-php.diff

File menu-php.diff, 1.1 KB (added by wonderboymusic, 7 years ago)
  • src/wp-admin/includes/menu.php

     
    7171$_wp_submenu_nopriv = array();
    7272$_wp_menu_nopriv = array();
    7373// Loop over submenus and remove pages for which the user does not have privs.
    74 foreach ( array( 'submenu' ) as $sub_loop ) {
    75         foreach ($$sub_loop as $parent => $sub) {
    76                 foreach ($sub as $index => $data) {
    77                         if ( ! current_user_can($data[1]) ) {
    78                                 unset(${$sub_loop}[$parent][$index]);
    79                                 $_wp_submenu_nopriv[$parent][$data[2]] = true;
    80                         }
     74foreach ($submenu as $parent => $sub) {
     75        foreach ($sub as $index => $data) {
     76                if ( ! current_user_can($data[1]) ) {
     77                        unset($submenu[$parent][$index]);
     78                        $_wp_submenu_nopriv[$parent][$data[2]] = true;
    8179                }
    82                 unset($index, $data);
     80        }
     81        unset($index, $data);
    8382
    84                 if ( empty(${$sub_loop}[$parent]) )
    85                         unset(${$sub_loop}[$parent]);
    86         }
    87         unset($sub, $parent);
     83        if ( empty($submenu[$parent]) )
     84                unset($submenu[$parent]);
    8885}
    89 unset($sub_loop);
     86unset($sub, $parent);
    9087
    9188/*
    9289 * Loop over the top-level menu.