block_core_navigation_get_classic_menu_fallback_blocks

The timeline below displays how wordpress function block_core_navigation_get_classic_menu_fallback_blocks has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.3

/**
 * Converts a classic navigation to blocks.
 *
 * @deprecated 6.3.0 Use WP_Navigation_Fallback::get_classic_menu_fallback_blocks() instead.
 *
 * @param  object $classic_nav_menu WP_Term The classic navigation object to convert.
 * @return array the normalized parsed blocks.
 */
function block_core_navigation_get_classic_menu_fallback_blocks($classic_nav_menu)
{
    _deprecated_function(__FUNCTION__, '6.3.0', 'WP_Navigation_Fallback::get_classic_menu_fallback_blocks');
    // BEGIN: Code that already exists in wp_nav_menu().
    $menu_items = wp_get_nav_menu_items($classic_nav_menu->term_id, array('update_post_term_cache' => false));
    // Set up the $menu_item variables.
    _wp_menu_item_classes_by_context($menu_items);
    $sorted_menu_items = array();
    foreach ((array) $menu_items as $menu_item) {
        $sorted_menu_items[$menu_item->menu_order] = $menu_item;
    }
    unset($menu_items, $menu_item);
    // END: Code that already exists in wp_nav_menu().
    $menu_items_by_parent_id = array();
    foreach ($sorted_menu_items as $menu_item) {
        $menu_items_by_parent_id[$menu_item->menu_item_parent][] = $menu_item;
    }
    $inner_blocks = block_core_navigation_parse_blocks_from_menu_items(isset($menu_items_by_parent_id[0]) ? $menu_items_by_parent_id[0] : array(), $menu_items_by_parent_id);
    return serialize_blocks($inner_blocks);
}

WordPress Version: 6.2

/**
 * Converts a classic navigation to blocks.
 *
 * @param  object $classic_nav_menu WP_Term The classic navigation object to convert.
 * @return array the normalized parsed blocks.
 */
function block_core_navigation_get_classic_menu_fallback_blocks($classic_nav_menu)
{
    // BEGIN: Code that already exists in wp_nav_menu().
    $menu_items = wp_get_nav_menu_items($classic_nav_menu->term_id, array('update_post_term_cache' => false));
    // Set up the $menu_item variables.
    _wp_menu_item_classes_by_context($menu_items);
    $sorted_menu_items = array();
    foreach ((array) $menu_items as $menu_item) {
        $sorted_menu_items[$menu_item->menu_order] = $menu_item;
    }
    unset($menu_items, $menu_item);
    // END: Code that already exists in wp_nav_menu().
    $menu_items_by_parent_id = array();
    foreach ($sorted_menu_items as $menu_item) {
        $menu_items_by_parent_id[$menu_item->menu_item_parent][] = $menu_item;
    }
    $inner_blocks = block_core_navigation_parse_blocks_from_menu_items(isset($menu_items_by_parent_id[0]) ? $menu_items_by_parent_id[0] : array(), $menu_items_by_parent_id);
    return serialize_blocks($inner_blocks);
}