Make WordPress Core


Ignore:
Timestamp:
04/07/2010 03:25:48 PM (16 years ago)
Author:
ryan
Message:

Nav menu fixes. Props ptahdunbar. see #12896 fixes #12844

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/nav-menu.php

    r13974 r14031  
    179179    $args = array( $items, $depth, $r );
    180180
    181     return call_user_func_array(array(&$walker, 'walk'), $args);
     181    return call_user_func_array( array(&$walker, 'walk'), $args );
    182182}
    183183
     
    203203                $object = get_post_type_object( $menu_item->object );
    204204                $menu_item->append = $object->singular_label;
     205                $menu_item->url = get_permalink( $menu_item->object_id );
    205206
    206207            } elseif ( 'taxonomy' == $menu_item->type ) {
    207208                $object = get_taxonomy( $menu_item->object );
    208209                $menu_item->append = $object->singular_label;
     210                $menu_item->url = get_term_link( (int) $menu_item->object_id, $menu_item->object );
    209211
    210212            } else {
    211213                $menu_item->append = __('Custom');
     214                $menu_item->url = get_post_meta( $menu_item->ID, '_menu_item_url', true );
    212215            }
    213216
    214217            $menu_item->title = $menu_item->post_title;
    215             $menu_item->url = get_post_meta( $menu_item->ID, '_menu_item_url', true );
    216218            $menu_item->target = get_post_meta( $menu_item->ID, '_menu_item_target', true );
    217219
     
    222224            $menu_item->xfn = get_post_meta( $menu_item->ID, '_menu_item_xfn', true );
    223225            break;
    224 
     226       
    225227        case 'custom':
    226228            $menu_item->db_id = 0;
     
    236238            $menu_item->url = get_post_meta( $menu_item->ID, '_menu_item_url', true );
    237239            $menu_item->target = get_post_meta( $menu_item->ID, '_menu_item_target', true );
    238             $menu_item->classes = '';
    239             $menu_item->xfn = '';
     240            $menu_item->classes = get_post_meta( $menu_item->ID, '_menu_item_target', true );
     241            $menu_item->xfn = get_post_meta( $menu_item->ID, '_menu_item_xfn', true );
    240242            break;
    241243
     
    274276            $menu_item->target = '';
    275277            $menu_item->attr_title = '';
    276             $menu_item->description = strip_tags( $menu_item->description );
     278            $menu_item->description = '';
    277279            $menu_item->classes = '';
    278280            $menu_item->xfn = '';
    279281            break;
    280282    }
    281     return $menu_item;
     283   
     284    return apply_filters( 'wp_setup_nav_menu_item', $menu_item, $menu_item_type, $menu_item_object );
    282285}
    283286?>
Note: See TracChangeset for help on using the changeset viewer.