如何将“active”类添加到 wp_nav_menu() 当前菜单项(简单方法)

2024-03-15

我正在使用入门主题 _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。


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


只需将此代码粘贴到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 的更多信息:

  • 在 WordPress 3.0 菜单中突出显示当前页面 https://wordpress.org/support/topic/highlight-current-page-in-wordpress-30-menus
  • Adding .active类到活动菜单项 https://wordpress.org/support/topic/adding-active-class-to-active-menu-item?replies=8
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将“active”类添加到 wp_nav_menu() 当前菜单项(简单方法) 的相关文章

  • 使用订单详细信息创建 Woocommerce 短代码

    我正在尝试创建一些与 woocommerce 订单数据相关的短代码 我有一个自定义页面 订单完成后客户将被重定向到该页面 访客结帐已禁用 因此所有购买的客户都将拥有一个帐户 在页面中 我想通过简码插入订单中的一些数据 这是一个例子 您好 c
  • 自定义 WP 主题时,我应该将导航栏放在“”标签之前还是之后?

    我正在通过制作子主题来自定义 WP 主题 我将 Bootstrap 中的导航栏放入子主题目录中的 header php 文件中 但是 我不确定在哪里放置导航栏代码 我可以把它都放在前面and之后标记成功 例如 无论我选择哪一个 导航栏都显示
  • 在字符串中间添加一个字符

    可能有一个简单的解决方案可以解决这个问题 但会引起面部表情 我将时间存储为 4 个字符长的字符串 即 1300 我试图将该字符串显示为 13 00 我觉得必须有一个比我现在正在做的更优雅的解决方案 我目前有 startTime get fi
  • 分页显示所有其他页面上第 1 页的相同帖子

    我最近在创建即将发生的事件列表时得到了很多帮助 请参阅此处显示即将举行的活动 包括今天的活动 https stackoverflow com questions 17343615 showing upcoming events includ
  • 为除 admin 之外的所有用户禁用管理栏

    我已经安装了 WordPress 和 BudyPress 我想禁用所有用户顶部显示的管理栏 有人可以告诉我如何正确地做到这一点吗 function is current user administrator global current u
  • WordPress - pre_get_posts 代替页面上的 query_posts

    我的情况有点复杂 我会尽量简洁地解释一下 我目前正在使用query posts修改我网站上自定义页面上的主查询 据我所知 它工作得很好 尽管我已经读到 由于多种不同的原因 使用 query posts 是不好的做法 那么 我为什么要使用qu
  • 如何在NavigationView的菜单项中设置椭圆形?

    我想在 NavigationView 的菜单项中设置 android ellipsize end 在我当前的实现中 当菜单项中的文本太长时 它只是在末尾被剪切 这是我到目前为止所尝试过的
  • Woocommerce 让产品显示在存档页面中

    我正在尝试让所有产品显示在我商店的存档页面中 我想知道他们的id我正在使用我的一个钩子 它在 wp head 上运行并检查 if is product category 我想以某种方式访问 产品的查询并获取它们的 ID if is prod
  • 如何自定义菜单项的背景颜色?

    我正在尝试定制Toolbar的弹出菜单 现在我无法设置菜单项的背景颜色 我的 styles xml 如下所示
  • WordPress:tax_query 使用 OR 运算符的多个术语

    简单的查询 但由于某种原因没有显示正确的帖子 尝试显示带有每月待办事项清单术语 如果没有结果 则显示带有社区活动术语的帖子 有什么建议么 todo args array cat gt my category id posts per pag
  • 为什么 WordPress 在使用 wp_register_script() 时放置“text/rocketscript”而不是“text/javascript”?

    我将以下代码插入到WordPress 插件 wp deregister script jquery wp register script jquery http ajax googleapis com ajax libs jquery 1
  • 在管理订单中显示 Woocommerce 自定义结账字段值,使其可编辑

    我在用 根据所选付款方式显示隐藏自定义 WooCommerce 结帐字段 https stackoverflow com questions 54927919 show hide custom woocommerce checkout fi
  • 如何在 WordPress 中使用 domPDF

    所以我想在我的 WordPress 帖子上有一个按钮 可以将帖子转换为 PDF 我找到了 domPDF 但我不知道如何用 WordPress 实现它 我知道使用插件会更容易 但我想不使用插件 有人可以向我解释一下如何实现这个吗 谢谢 你的问
  • Woocommerce:根据用户输入定制价格

    我不想在这里发帖 但我找不到我正在寻找的答案 而且我没有足够的声誉来评论其他非常相似的问题以获得我的确切答案 我从这篇文章中找到了近乎完美的答案 WooCommerce 将产品添加到购物车并覆盖价格 https stackoverflow
  • Woocommerce 中的订单接收页面上的 JS 跟踪代码中的订单商品

    我正在尝试在 Woocommerce 谢谢页面中集成跟踪代码 我只找到了订单id来填写 但我不知道如何完成订单项目数据 这是我的实际代码
  • 如何在 WordPress 中创建“通用”自定义字段?

    wordpress 版本 3 4 好的 这就是我正在尝试做的事情 创建一个名为 自定义字段 的页面 用户实际上永远不会看到该页面 只需让客户添加自定义字段即可 他经常需要每周 每月更改这些自定义字段 我需要将这些自定义字段显示在页眉 页脚或
  • 如何将产品添加到现有且已付款的 Woocommerce 订单中?

    我有一个 WooCommerce 网站 我的一位客户在该网站上购买了产品和电缆 该客户购买了一根与其他产品不兼容的电缆 并询问我们是否可以向他运送价格相同的兼容电缆 也许这是一个愚蠢的问题 但我如何编辑已付款的订单 删除不兼容的电缆并添加正
  • 使用 knit2wp 更新帖子

    我已经能够使用 knit2wp 成功发布到 WordPress 甚至可以使用图像 即使拥有这样的天赋 我也并非绝对正确 事实上 即使是上面的内容也需要一些工作 我希望稍后能够更新帖子 显然 RWordPress 软件包允许删除帖子 但如果无
  • woocommerce 在前端按库存和缺货对产品进行排序

    我想首先在产品类别中显示库存产品 或者如果可能的话在任何地方显示 然后我也想在 Woocommerce 中显示缺货产品 其实有很多产品没有数量但是有库存 所以需要检查库存状态 但我更喜欢先有更多的数量 在这种情况下 如何强制当前排序 非常感
  • WordPress 固定链接永远不会在本地主机 Ubuntu 12.10 上工作

    除默认设置外 Wordpress 永久链接不起作用 如何启用此重写 我试过了 sudo a2enmod rewrite sudo service apache2 restart 永久链接保存到 localhost wordpress 中的

随机推荐

  • React:有类似node.textContent的东西吗?

    我正在尝试测试一个反应组件子级 我想获得其子级的文本表示 有没有一个工具可以做类似的事情node textContent对于反应 我想要这样的东西 let testComponent
  • 通过 VSTO 在 PowerPoint 设计器中捕获鼠标事件

    我正在使用 C VSTO 开发 PowerPoint 2013 插件 当用户处于设计模式 而不是演示模式 如何捕获与幻灯片上的形状 对象有关的鼠标事件 例如鼠标悬停 鼠标按下等 我想监听这些事件 以便创建位于对象 形状附近的自定义 UI 是
  • USB 调试 - 安装 Epson Moverio 驱动程序时出现问题

    Android 开发新手 我使用以下命令制作了一个小应用程序Eclipse http en wikipedia org wiki Eclipse 28software 29在虚拟 Android 设备上完美运行 现在 我想在真实的设备上运行
  • 如何使用 jQuery 或其他 js 框架将字符串作为文件上传

    使用javascript 我有一个字符串文件 通过ajax请求获得 如何通过另一个ajax请求将其作为文件上传到服务器 以下是无需手动构建多部分请求正文的方法 var s some string data var filename foob
  • 将 dd/mm/yyyy 转换为 SQL Server 中的日期

    我正在疯狂地尝试将字符串类型列转换为日期 列名称是StartDate 其中包含字符串日期格式dd mm yyyy 字段类型是varchar 3000 我尝试了以下方法 CONVERT datetime StartDate 103 CAST
  • Perl 中的非阻塞/异步执行

    有没有办法实现非阻塞 异步执行 无需fork http perldoc perl org functions fork html ing 在 Perl 中 我曾经是一名 Python 开发人员很多年了 Python 有非常出色的 Twist
  • Vagrant 端口转发在 Mavericks 上不起作用

    我正在使用一个流浪的 Geodjango 盒子 https github com david wilson vagrant geodjango base并且端口转发对我不起作用 在盒子上 我运行了 python manage py runs
  • 运行时更改进度对话框消息

    我有一个相当简单的问题 我不知道如何解决 我想在进度对话框运行和显示时更改其消息文本 一个例子是 剩余时间 计数器 它会在进度动画旋转时进行倒计时 我不确定如何解决这个问题 因为即使在正在运行的线程中执行progressDialog set
  • 如何在 C# 中将名字和姓氏的首字母大写?

    有没有一种简单的方法可以将字符串的第一个字母大写并降低其余字母 有内置方法还是我需要自己制作 TextInfo ToTitleCase 将字符串的每个标记中的第一个字符大写 如果不需要维护 Acronym Uppercasing 那么您应该
  • php mysql jquery AJAX 自动完成区分大小写

    在我的 php 脚本中 names GET part result mysql query SELECT FROM namestable where names LIKE names LIMIT 10 while row mysql fet
  • CSS 将元素保持在屏幕上的“固定”位置

    我正在寻找一种使用 CSS 在浏览器屏幕上创建 固定 HTML 对象的技巧 我希望它始终保持在同一位置 即使用户滚动文档时也是如此 我不确定这个的正确术语是什么 它就像 Facebook 上的聊天按钮或某些网站上的反馈按钮 在整个页面中跟随
  • 方法封装的性能成本

    封装方法有性能成本吗 一个非常简短 随意的例子 public static decimal Floor decimal value return Math Floor value 上面的函数会被内联吗 如果是这样 它是否与从代码中调用 Ma
  • 如何在类方法 Objective C 中访问 self

    我有一个使用类方法的实用程序类 我试图在类方法中引用 self 但不能 我想知道如何在类方法中声明以下内容 MRProgressOverlayView showOverlayAddedTo self window animated YES
  • UITableView tableFooterView 显示在 UITableView 的顶部 - 错误

    我创建了一个非常简单的测试用例来重现这个问题 我正在尝试以编程方式将页脚视图设置为表格视图 请注意 我指的是表格视图最底部的页脚 而不是部分页脚 大多数堆栈溢出答案都会使他们感到困惑 这是我的非常简单的代码 void viewDidLoad
  • 矩形相交

    是否有任何已知的方法来计算两个矩形之间的相交矩形 我的意思是 如果矩形 A 由 x1 y2 x2 y2 定义 B 由 x3 y3 x4 y4 定义 那么如何计算相交矩形 C x5 y5 x6 y6 的坐标 Thanks 相交多边形的一般问题
  • 使用三点系统计算模型中的压痕深度?

    通过光线投射 我们可以选择游戏对象碰撞器上的一个点 在简短的视觉效果中 三个点用小球体表示 表示用户选择 我们的愿望是计算模型压痕中任何点的深度 当前的想法是使用一种系统 其中用户选择压痕深度之外的两个点和压痕深度内的一个点来计算压痕深度
  • 在Windows中,以这样的方式杀死批处理文件,其子文件也被杀死

    我需要开始一个exe from a cmd 包装 exe 以便我可以提供一些命令行选项 问题是 仅从 cmd 调用 exe 并不能使包装完全透明 如果 exe 挂起 终止 cmd 不会终止该 exe 我也需要它来杀死exe 我可以在普通 W
  • 如果 T-SQL 事务被取消,是否会回滚?

    匆忙中 我愚蠢地运行了一条语句来更新表 而没有用where陈述 于是它开始更新表中的所有记录 我立即注意到该错误并点击了 SQL Server Management Studio 中的 取消执行 按钮 但花了一分钟才停止运行 所以我的问题是
  • 嗅探器找不到 DJANGO_SETTINGS_MODULE

    我正在尝试在开发过程中进行更改后自动重新运行测试 搜索了一下之后sniffer http pypi python org pypi sniffer看起来不错 但如果我运行它 我的测试会失败并出现以下错误 ERROR Failure Impo
  • 如何将“active”类添加到 wp_nav_menu() 当前菜单项(简单方法)

    我正在使用入门主题 Underscores 和 Bootstrap 创建自定义 Wordpress 主题 我想修改wp nav menu以便它分配当前菜单项 active类而不是默认类 current menu item 我需要这个才能使用