WordPress.org

Make WordPress Core

Ticket #13994: front-page-current-class.13994.2.diff

File front-page-current-class.13994.2.diff, 1.1 KB (added by filosofo, 8 years ago)
  • wp-includes/nav-menu-template.php

     
    313313
    314314        $possible_object_parents = array_filter( $possible_object_parents );
    315315
     316        $front_page_url = home_url();
     317
    316318        foreach ( (array) $menu_items as $key => $menu_item ) {
    317319
    318320                $menu_items[$key]->current = false;
     
    383385                                $active_parent_item_ids[] = (int) $menu_item->menu_item_parent;
    384386                                $active_parent_object_ids[] = (int) $menu_item->post_parent;
    385387                                $active_object = $menu_item->object;
     388
     389                        // give front page item current-menu-item class when extra query arguments involved
     390                        } elseif ( $item_url == $front_page_url && is_front_page() ) {
     391                                $classes[] = 'current-menu-item';
    386392                        }
    387393
    388394                        if ( untrailingslashit($item_url) == home_url() )
     
    477483        $_used_ids[] = $item->ID;
    478484        return $id;
    479485}
    480 add_filter( 'nav_menu_item_id', '_nav_menu_item_id_use_once', 10, 2 );
    481  No newline at end of file
     486add_filter( 'nav_menu_item_id', '_nav_menu_item_id_use_once', 10, 2 );