WordPress.org

Make WordPress Core

Ticket #32631: 32631.diff

File 32631.diff, 1.2 KB (added by westonruter, 5 years ago)

Source: https://github.com/xwp/wordpress-develop/pull/91/files#diff-8ffabe2d2470a815389fd77c045d2c7fR562

  • src/wp-includes/nav-menu.php

     
    556556        static $fetched = array();
    557557
    558558        $items = get_objects_in_term( $menu->term_id, 'nav_menu' );
     559        if ( is_wp_error( $items ) ) {
     560                return false;
     561        }
    559562
    560         if ( empty( $items ) )
    561                 return $items;
    562 
    563563        $defaults = array( 'order' => 'ASC', 'orderby' => 'menu_order', 'post_type' => 'nav_menu_item',
    564564                'post_status' => 'publish', 'output' => ARRAY_A, 'output_key' => 'menu_order', 'nopaging' => true );
    565565        $args = wp_parse_args( $args, $defaults );
    566566        $args['include'] = $items;
    567567
    568         $items = get_posts( $args );
     568        if ( ! empty( $items ) ) {
     569                $items = get_posts( $args );
     570        } else {
     571                $items = array();
     572        }
    569573
    570574        if ( is_wp_error( $items ) || ! is_array( $items ) )
    571575                return false;
     
    627631         * @param object $menu  The menu object.
    628632         * @param array  $args  An array of arguments used to retrieve menu item objects.
    629633         */
    630         return apply_filters( 'wp_get_nav_menu_items',  $items, $menu, $args );
     634        return apply_filters( 'wp_get_nav_menu_items', $items, $menu, $args );
    631635}
    632636
    633637/**