Make WordPress Core

Ticket #63261: 63261.patch

File 63261.patch, 1.2 KB (added by abcd95, 7 months ago)

There might be a better approach but this also works.

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

    diff --git a/src/wp-includes/nav-menu-template.php b/src/wp-includes/nav-menu-template.php
    index d90fdfa806..4d6408db0a 100644
    a b function _wp_menu_item_classes_by_context( &$menu_items ) { 
    330330        $queried_object    = $wp_query->get_queried_object();
    331331        $queried_object_id = (int) $wp_query->queried_object_id;
    332332
     333        $queried_object_type = '';
     334        if ( isset( $queried_object->post_type ) ) {
     335                $queried_object_type = $queried_object->post_type;
     336        } elseif ( isset( $queried_object->taxonomy ) ) {
     337                $queried_object_type = $queried_object->taxonomy;
     338        }
     339
    333340        $active_object               = '';
    334341        $active_ancestor_item_ids    = array();
    335342        $active_parent_item_ids      = array();
    function _wp_menu_item_classes_by_context( &$menu_items ) { 
    424431                        // If the menu item corresponds to the currently queried post or taxonomy object.
    425432                } elseif (
    426433                        (int) $menu_item->object_id === $queried_object_id
     434                        && $queried_object_type === $menu_item->object
    427435                        && (
    428436                                ( ! empty( $home_page_id ) && 'post_type' === $menu_item->type
    429437                                        && $wp_query->is_home && $home_page_id === (int) $menu_item->object_id )