質問: array( 'menu' => 'main menu', 'container' => '', 'menu_id' => 'nav', ); wp_nav_menu($args); あなたが訪れたとき http://lichens.ie/view-lichens-by/lichens-by-habitat/ これには「現在の」クラスがないことがわかります。それは親です。ps「機能していないリンク」を投稿して申し訳ありません - 評判の制限によるものです任意のアイデア - 大いに感謝するのに役立ちます。
回答: これは、現在のページのクラスを処理する_wp_menu_item_classes_by_context()のコードの一部です。// if the menu item corresponds to the currently-queried post or taxonomy object } elseif ( $menu_item->object_id == $queried_object_id && ( ( ! empty( $home_page_id ) && 'post_type' == $menu_item->type && $wp_query->is_home && $home_page_id == $menu_item->object_id ) || ( 'post_type' == $menu_item->type && $wp_query->is_singular ) || ( 'taxonomy' == $menu_item->type && ( $wp_query->is_category || $wp_query->is_tag || $wp_query->is_tax ) ) ) ) { $classes[] = 'current-menu-item'; idは一致しなければなりません。 post_typeタイプでなければなりません。 クエリはis_singularに対するものでなければなりません。 項目タイプのcssクラスが正しく生成されるため、2番目の点は除外できます。そのため、idまたはis_singular条件付きのいずれかで問題が発生します。二次ループをページ上で実行していますか?条件式が壊れる最も一般的な理由はquery_posts()の不適切な使用です。