Make WordPress Core


Ignore:
Timestamp:
07/26/2020 10:49:07 AM (5 years ago)
Author:
SergeyBiryukov
Message:

Posts, Post Types: Move get_post_states() back to the admin for now, require the file in WP_Customize_Nav_Menus::customize_register() instead.

This provides a minor performance improvement by only running the function in contexts where it's needed.

Follow-up to [47211], [47213], [47763], [48619].

See #46829, #49374.

File:
1 edited

Legend:

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

    r48619 r48620  
    817817                if ( $object ) {
    818818                    $menu_item->type_label = $object->labels->singular_name;
    819                     // Use post states for special pages.
    820                     $menu_post   = get_post( $menu_item->object_id );
    821                     $post_states = get_post_states( $menu_post );
    822                     if ( $post_states ) {
    823                         $menu_item->type_label = wp_strip_all_tags( implode( ', ', $post_states ) );
     819                    // Denote post states for special pages (only in the admin).
     820                    if ( function_exists( 'get_post_states' ) ) {
     821                        $menu_post   = get_post( $menu_item->object_id );
     822                        $post_states = get_post_states( $menu_post );
     823                        if ( $post_states ) {
     824                            $menu_item->type_label = wp_strip_all_tags( implode( ', ', $post_states ) );
     825                        }
    824826                    }
    825827                } else {
Note: See TracChangeset for help on using the changeset viewer.