Wordpress-选择/加载子菜单项页面时,突出显示父菜单项

Wordpress-选择/加载子菜单项页面时,突出显示父菜单项,wordpress,Wordpress,我有一个基本菜单,一些菜单项有子菜单。 我对wordpress几乎没有经验,现在没有时间深入了解细节。所以我的问题是,当用户导航到其中一个子菜单页面时,突出显示顶部菜单项的最简单方法是什么。(我尝试使用javascript和纯css通过元素id和“current cat parent”类设置颜色属性,但两者都不起作用)。 非常感谢您的帮助 注意:我正在使用一个名为chameleon的主题。您可以将当前菜单项类指定给。当前菜单祖先类如下 .main_menu li.current-menu-ite

我有一个基本菜单,一些菜单项有子菜单。 我对wordpress几乎没有经验,现在没有时间深入了解细节。所以我的问题是,当用户导航到其中一个子菜单页面时,突出显示顶部菜单项的最简单方法是什么。(我尝试使用javascript和纯css通过元素id和“current cat parent”类设置颜色属性,但两者都不起作用)。
非常感谢您的帮助


注意:我正在使用一个名为chameleon的主题。

您可以将当前菜单项类指定给。当前菜单祖先类如下

.main_menu li.current-menu-item a, .main_menu li.current-menu-ancestor a{
    color: #777777 !important; /* highlight color */
}
它将突出显示父页面菜单


请参阅

。当前菜单祖先
对我不起作用
。当前页面祖先
完成了。

您可以在主题的footer.php文件中的结束正文标记之前插入以下代码

<!-- Highlight parent page link when on child page -->
<?php if (is_page()) {   //  displaying a child page ?>
    <script type="text/javascript">
        jQuery("li.current-page-ancestor").addClass('current-menu-item');
    </script>
<?php } ?>

jQuery(“li.current page”).addClass(“current-menu-item”);
其美妙之处在于它在PHP中的应用,因此代码是动态的。它只需添加另一个本地WordPress nav li类,即可激活当前页面的链接

我在这里写了一篇短文解释它的工作原理:


如果您对此有任何疑问,请随时告诉我

我在编辑这篇文章时遇到了一些问题,但找到了一个简单的解决办法。 我正在使用Wordpress店面主题,只需将其粘贴到子主题的
style.css
文件中:

li.current-menu-parent >a {
  color:red !important;
}

有趣。您的解决方案突出显示了父对象,但未突出显示当前子对象。但这让我走上了正确的道路,最终,这就是我所需要的

li.current-menu-parent >a, .current-menu-item >a {
    color: red !important;
}

这对我有用。以下CSS将允许您设置活动菜单的样式。。。有三个菜单

.current-menu-ancestor{ background:RED !important; }
.current_page_parent{background:GREEN !important;}
.active{background:YELLOW !important;}
  • 将显示表示当前活动页面的菜单按钮 黄色
  • 如果表示当前活动页面的按钮是嵌套的,则其 家长将是绿色的。。。否则,菜单上的顶层按钮将为绿色

  • 而且最重要的是(无论嵌套的级别在 您的菜单)类为的任何元素。当前菜单祖先 将使用红色背景设置样式

也可以只设置当前菜单祖先的样式,任何父菜单项都将设置样式

WordPress 5.7 测试和工作,2021年

2021年。如果你们中有人还在寻找解决方案,那么就在这里

这将突出显示父级及其子级。如果没有子菜单,则父菜单将高亮显示。记住
!重要信息
为必填项

.current-menu-parent > a,
.current-menu-item a { 
    color: blue !important; /* Important is required */
}

欢迎来到堆栈溢出!请在您发布的代码中添加一些信息。另外,检查并采取一个可怕的。我几乎一天都在寻找这个解决方案。非常感谢您提供了一个最简单的解决方案。