gpt4 book ai didi

wordpress - 如何将 "active"类添加到 wp_nav_menu() 当前菜单项(简单方法)

转载 作者:行者123 更新时间:2023-12-03 07:52:30 25 4
gpt4 key购买 nike

我正在使用入门主题 _Underscores 和 Bootstrap 创建自定义 Wordpress 主题。
我要修改wp_nav_menu以便它分配当前菜单项 .active类而不是默认 .current-menu-item .我需要这个才能使用 .active来自 Bootstrap 的类。
这是我所拥有的(额外的东西来自 WP,所以请向右滚动):

<ul id="menu-main-menu" class="nav navbar-nav">
<li id="menu-item-14" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-13 current_page_item menu-item-14"><a href="">item1</a></li>
<li id="menu-item-12" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-12"><a href="">item2</a></li>
</ul>
这是我需要的:
<ul id="menu-main-menu" class="nav navbar-nav">
<li id="menu-item-14" class="active menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-13 current_page_item menu-item-14"><a href="">item1</a></li>
<li id="menu-item-12" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-12"><a href="">item2</a></li>
</ul>
我更愿意在不修改的情况下实现这一点 ../wp-includes/nav-menu-template.php并且不使用JS。

更新:我在发布此问题之前找到了答案,但由于我很难找到它,因此将其发布为 QA 以希望节省一些时间。

最佳答案

只需将此代码粘贴到functions.php文件中:

add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);

function special_nav_class ($classes, $item) {
if (in_array('current-menu-item', $classes) ){
$classes[] = 'active ';
}
return $classes;
}

更多关于 wordpress.org 的信息:
  • Highlight Current Page in WordPress 3.0 Menus
  • Adding .active class to active menu item
  • 关于wordpress - 如何将 "active"类添加到 wp_nav_menu() 当前菜单项(简单方法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26789438/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com