Ticket #14415: omit-description-menu-item-checklist.14415.diff
| File omit-description-menu-item-checklist.14415.diff, 2.7 KB (added by , 16 years ago) |
|---|
-
wp-admin/admin-ajax.php
781 781 782 782 require_once ABSPATH . 'wp-admin/includes/nav-menu.php'; 783 783 784 $item_ids = wp_save_nav_menu_items( 0, $_POST['menu-item'] ); 784 /** 785 * For performance reasons, we omit some object properties from the checklist. 786 * The following is a hacky way to restore them when adding non-custom items. 787 */ 788 $menu_items_data = (array) $_POST['menu-item']; 789 $menu_item_data = array_shift( $menu_items_data ); 790 if ( 791 ! empty( $menu_item_data['menu-item-type'] ) && 792 'custom' != $menu_item_data['menu-item-type'] && 793 ! empty( $menu_item_data['menu-item-object-id'] ) 794 ) { 795 switch( $menu_item_data['menu-item-type'] ) { 796 case 'post_type' : 797 $_object = get_post( $menu_item_data['menu-item-object-id'] ); 798 break; 799 800 case 'taxonomy' : 801 $_object = get_term( $menu_item_data['menu-item-object-id'], $menu_item_data['menu-item-object'] ); 802 break; 803 } 804 805 $_menu_items = array_map( 'wp_setup_nav_menu_item', array( $_object ) ); 806 $_menu_item = array_shift( $_menu_items ); 807 808 /** Restore the missing menu item properties **/ 809 $menu_item_data['menu-item-description'] = $_menu_item->description; 810 811 $menu_items_data = array( $menu_item_data ); 812 } 813 814 $item_ids = wp_save_nav_menu_items( 0, $menu_items_data ); 785 815 if ( is_wp_error( $item_ids ) ) 786 816 die('-1'); 787 817 -
wp-admin/includes/nav-menu.php
249 249 $output .= '<input type="hidden" class="menu-item-url" name="menu-item[' . $possible_object_id . '][menu-item-url]" value="'. esc_attr( $item->url ) .'" />'; 250 250 $output .= '<input type="hidden" class="menu-item-target" name="menu-item[' . $possible_object_id . '][menu-item-target]" value="'. esc_attr( $item->target ) .'" />'; 251 251 $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 ) .'" />'; 252 $output .= '<input type="hidden" class="menu-item-description" name="menu-item[' . $possible_object_id . '][menu-item-description]" value="'. esc_attr( $item->description ) .'" />';253 252 $output .= '<input type="hidden" class="menu-item-classes" name="menu-item[' . $possible_object_id . '][menu-item-classes]" value="'. esc_attr( implode( ' ', $item->classes ) ) .'" />'; 254 253 $output .= '<input type="hidden" class="menu-item-xfn" name="menu-item[' . $possible_object_id . '][menu-item-xfn]" value="'. esc_attr( $item->xfn ) .'" />'; 255 254 }
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)