WordPress.org

Make WordPress Core

Ticket #13958: informative.13958.diff

File informative.13958.diff, 1.4 KB (added by scribu, 4 years ago)

Display raw post type / taxonomy

  • wp-includes/nav-menu.php

     
    559559                        $menu_item->type = empty( $menu_item->type ) ? get_post_meta( $menu_item->ID, '_menu_item_type', true ) : $menu_item->type; 
    560560 
    561561                        if ( 'post_type' == $menu_item->type ) { 
    562                                 $object = get_post_type_object( $menu_item->object ); 
    563                                 $menu_item->type_label = $object->labels->singular_name; 
     562                                if ( post_type_exists( $menu_item->object ) ) 
     563                                        $menu_item->type_label = get_post_type_object( $menu_item->object )->labels->singular_name; 
     564                                else 
     565                                        $menu_item->type_label = $menu_item->object; 
     566 
    564567                                $menu_item->url = get_permalink( $menu_item->object_id ); 
    565568 
    566569                                $original_object = get_post( $menu_item->object_id ); 
     
    568571                                $menu_item->title = '' == $menu_item->post_title ? $original_title : $menu_item->post_title; 
    569572 
    570573                        } elseif ( 'taxonomy' == $menu_item->type ) { 
    571                                 $object = get_taxonomy( $menu_item->object ); 
    572                                 $menu_item->type_label = $object->labels->singular_name; 
     574                                if ( taxonomy_exists( $menu_item->object ) ) 
     575                                        $menu_item->type_label = get_taxonomy( $menu_item->object )->labels->singular_name; 
     576                                else 
     577                                        $menu_item->type_label = $menu_item->object; 
     578 
    573579                                $term_url = get_term_link( (int) $menu_item->object_id, $menu_item->object ); 
    574580                                $menu_item->url = !is_wp_error( $term_url ) ? $term_url : ''; 
    575581