WordPress.org

Make WordPress Core

Ticket #16799: 16799.remove-inputs.diff

File 16799.remove-inputs.diff, 3.6 KB (added by duck_, 7 years ago)

Remove more inputs from Walker_Nav_Menu_Checklist

  • wp-admin/includes/nav-menu.php

     
    260260                // Menu item hidden fields
    261261                $output .= '<input type="hidden" class="menu-item-db-id" name="menu-item[' . $possible_object_id . '][menu-item-db-id]" value="' . $possible_db_id . '" />';
    262262                $output .= '<input type="hidden" class="menu-item-object" name="menu-item[' . $possible_object_id . '][menu-item-object]" value="'. esc_attr( $item->object ) .'" />';
    263                 $output .= '<input type="hidden" class="menu-item-parent-id" name="menu-item[' . $possible_object_id . '][menu-item-parent-id]" value="'. esc_attr( $item->menu_item_parent ) .'" />';
    264263                $output .= '<input type="hidden" class="menu-item-type" name="menu-item[' . $possible_object_id . '][menu-item-type]" value="'. esc_attr( $item->type ) .'" />';
    265                 $output .= '<input type="hidden" class="menu-item-title" name="menu-item[' . $possible_object_id . '][menu-item-title]" value="'. esc_attr( $item->title ) .'" />';
    266264                $output .= '<input type="hidden" class="menu-item-url" name="menu-item[' . $possible_object_id . '][menu-item-url]" value="'. esc_attr( $item->url ) .'" />';
    267                 $output .= '<input type="hidden" class="menu-item-target" name="menu-item[' . $possible_object_id . '][menu-item-target]" value="'. esc_attr( $item->target ) .'" />';
    268                 $output .= '<input type="hidden" class="menu-item-attr_title" name="menu-item[' . $possible_object_id . '][menu-item-attr_title]" value="'. esc_attr( $item->attr_title ) .'" />';
    269                 $output .= '<input type="hidden" class="menu-item-classes" name="menu-item[' . $possible_object_id . '][menu-item-classes]" value="'. esc_attr( implode( ' ', $item->classes ) ) .'" />';
    270                 $output .= '<input type="hidden" class="menu-item-xfn" name="menu-item[' . $possible_object_id . '][menu-item-xfn]" value="'. esc_attr( $item->xfn ) .'" />';
    271265        }
    272266}
    273267
  • wp-admin/admin-ajax.php

     
    757757        require_once ABSPATH . 'wp-admin/includes/nav-menu.php';
    758758
    759759        // For performance reasons, we omit some object properties from the checklist.
    760         // The following is a hacky way to restore them when adding non-custom items.
    761 
     760        // The following restores them when adding non-custom items.
    762761        $menu_items_data = array();
    763762        foreach ( (array) $_POST['menu-item'] as $menu_item_data ) {
    764763                if (
     
    769768                        switch( $menu_item_data['menu-item-type'] ) {
    770769                                case 'post_type' :
    771770                                        $_object = get_post( $menu_item_data['menu-item-object-id'] );
    772                                 break;
    773 
     771                                        break;
    774772                                case 'taxonomy' :
    775773                                        $_object = get_term( $menu_item_data['menu-item-object-id'], $menu_item_data['menu-item-object'] );
    776                                 break;
     774                                        break;
    777775                        }
    778776
    779                         $_menu_items = array_map( 'wp_setup_nav_menu_item', array( $_object ) );
    780                         $_menu_item = array_shift( $_menu_items );
     777                        $_menu_item = wp_setup_nav_menu_item( $_object );
    781778
    782779                        // Restore the missing menu item properties
     780                        $menu_item_data['menu-item-parent-id']   = $_menu_item->menu_item_parent;
     781                        $menu_item_data['menu-item-title']       = $_menu_item->title;
     782                        $menu_item_data['menu-item-target']      = $_menu_item->target;
     783                        $menu_item_data['menu-item-attr-title']  = $_menu_item->attr_title;
     784                        $menu_item_data['menu-item-classes']     = implode( ' ', $_menu_item->classes );
     785                        $menu_item_data['menu-item-xfn']         = $_menu_item->xfn;
    783786                        $menu_item_data['menu-item-description'] = $_menu_item->description;
    784787                }
    785788