Ticket #16799: 16799.remove-inputs.diff
| File 16799.remove-inputs.diff, 3.6 KB (added by duck_, 20 months ago) |
|---|
-
wp-admin/includes/nav-menu.php
260 260 // Menu item hidden fields 261 261 $output .= '<input type="hidden" class="menu-item-db-id" name="menu-item[' . $possible_object_id . '][menu-item-db-id]" value="' . $possible_db_id . '" />'; 262 262 $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 ) .'" />';264 263 $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 ) .'" />';266 264 $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 ) .'" />';271 265 } 272 266 } 273 267 -
wp-admin/admin-ajax.php
757 757 require_once ABSPATH . 'wp-admin/includes/nav-menu.php'; 758 758 759 759 // 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. 762 761 $menu_items_data = array(); 763 762 foreach ( (array) $_POST['menu-item'] as $menu_item_data ) { 764 763 if ( … … 769 768 switch( $menu_item_data['menu-item-type'] ) { 770 769 case 'post_type' : 771 770 $_object = get_post( $menu_item_data['menu-item-object-id'] ); 772 break; 773 771 break; 774 772 case 'taxonomy' : 775 773 $_object = get_term( $menu_item_data['menu-item-object-id'], $menu_item_data['menu-item-object'] ); 776 break;774 break; 777 775 } 778 776 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 ); 781 778 782 779 // 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; 783 786 $menu_item_data['menu-item-description'] = $_menu_item->description; 784 787 } 785 788
