问题标签 [wp-nav-menu-item]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1323 浏览

wordpress - 将“活动”类添加到 wordpress 中的当前后祖先菜单项父级

我在wordpress中有这样的菜单

  • 父项(A 页)
    • 子项(A 类)

当我在子项(类别)页面中将“current-menu-parent”类添加到“父项”中时,这非常有用。但是当我查看来自子项(类别)的帖子之一时,没有特殊类被添加到“父项”中。只有“current-post-ancestor”类被添加到子项(类别)中。当我查看来自子项(类别) 的帖子时,如何将类添加到“父项” ?

注意:我想要一个 PHP 解决方案,不接受 Javascript/Jquery 解决方案。

更新 :

这就是我到目前为止所拥有的。但它正在为所有具有子项的父项添加类。

0 投票
1 回答
1132 浏览

php - wp_nav_menu_items - 导航菜单中的第一个位置

我正在使用以下代码将搜索框添加到导航菜单中:

它工作得很好,但它在菜单末尾添加了搜索框作为最后<li>一项

有什么办法可以将搜索框添加为菜单上的第一项?

0 投票
0 回答
560 浏览

wordpress - Wordpress 导航错误未定义属性:WP_Post_Type::$term_id

我遇到了一个问题,看起来好像有几个人遇到过,但没有人发布解决方案。

当我使用 wp_nav_menu() 函数时,在创建自定义帖子类型和自定义分类后会出现问题。我只在我的存档页面上看到这个错误,我得到了错误:

当我将分类等级更改为 false 时,问题就停止了,尽管我需要它为 true。我还可以通过编辑 WordPress 核心文件来阻止错误:

第 349-361 行,如果我将其包装在 is_single() 中

因此 nav-menu-template 无法获取查询的对象 ID,因为它位于存档页面上并因此而出错。菜单仍然正确显示,尽管在导航栏上有一个很大的通知。

该通知随着我编辑的 Wordpress nav-menu-template 文件而消失,尽管版本更新会破坏它,因此我需要修复核心问题。

对 wp_nav_menu() 的调用可以是普通的或带有任何参数(名称、ID 等)的错误是相同的。

感谢您的时间。

附言。这是我第一次发布的问题,如果我做错了什么,我深表歉意。

以下是我的 CPT 和分类学注册:

0 投票
1 回答
165 浏览

php - Wordpress 中的当前级别导航

我有一个 3 级导航:

我正在尝试分别获取每个导航级别,

使用上面的示例导航,在 sub5 页面上,我需要

当前一级导航:首页

当前并行2级nav:submenu1、submenu(都在Home下)

当前并行3级导航:sub4,sub5(子菜单下的菜单)

我将需要修改菜单的元素和样式,并且需要使用 php 中的菜单项,例如:

请帮助分别获取导航层以显示如上所述。

我得到了 1 级和 3 级的工作,但无法正确显示当前的并行 2 级导航。

谢谢。

当前代码:第二个导航作品:

但是,如果菜单中有重复的(第 3 级)页面,则此脚本仅采用第一个父级......它可能是最后一个或真正的父级(可能来自 url 路径?)

菜单问题中的重复页面:

访问重复页面(sub5)时,返回的父级是第一个(Home > submenu),应该是(About > about3)

请帮助解决这个问题...

0 投票
2 回答
1178 浏览

wordpress - WP Bootstrap Navwalker 不显示“当前菜单项”类

liWP Bootstrap Navwalker 生成的不包括“current-menu-item”类,导致我在设置当前活动菜单项时出现问题。

我在我的functions.php文件中添加了下面的代码,但它不起作用,因为li没有'current-menu-item'类开始。

我还尝试声明一个全局变量$myNav,然后分配整个wp_nav_menu代码块,但仍然无法正常工作。

这是wp_nav_menu我文件中的代码的header.php样子。

这是我的functions.php文件。

这是我检查输出 HTML 上的元素时的样子。

我的目标是让 navwalkercurrent-menu-item在活动中生成类,li以便我可以正确设置它的样式。

0 投票
1 回答
126 浏览

wordpress - WordPress 菜单:从 ul 中删除第三级的类

我正在使用Bootstrap 导航步行器

用于创建 WordPress 菜单。它创造了什么

现在我不想在 UL 的第三和第四级添加课程。我该怎么做?没有JS可以吗?

0 投票
0 回答
173 浏览

php - 在 wp nav 菜单中获取模板部分

我正在尝试使用将我自己的字段添加到菜单中get_template_part。问题是我的代码不能正常工作,因为它在外面 <ul id="primary-menu" class="nav-menu">

这是php:

这是从 PHP 生成的 HTML

我究竟做错了什么?

0 投票
1 回答
78 浏览

php - Wordpress - 在显示子页面时显示自定义菜单链接

我有这个循环,它只显示当前页面的所有子页面:

此页面的导航如下所示:

上面的代码正确显示了所有直接子页面,但我希望它显示自定义链接和我添加到菜单下拉菜单中的其他页面。

我尝试过使用wp_get_nav_menu_items代替get_pages并使用'post_type' => 'page',但我似乎无法正常工作。我可以显示所有页面的完整列表,也可以只显示直接子页面。

谁能告诉我哪里出错了?我觉得这应该是一件很容易的事情......

0 投票
1 回答
1067 浏览

php - 将 wp_nav_menu 变成 foreach 循环

我有一个自定义的 wp_nav_menu 导航,它仅从一个回显行输出子页面项目的整个列表......

我这样做是为了去掉ulandli标签。目前它输出这个:

这是完美的,正是我想要的。

你会看到我使用了一个自定义的walker,这是为了让我只显示当前页面的子菜单项。

当我需要向每个服务盒项目添加其他元素时,问题就出现了。

我已经设法添加标签和类,例如 H1 和 Div 标签......但现在,我想在每个服务框项目旁边的每个页面标题下方添加一个按钮。

我相信最好的选择是将它添加到循环中,而不是将这些项目添加到回显字符串中,我可以正确添加它们,从而为每个项目提供更多灵活性。

我以前使用页面和发布循环完成了此操作,但我无法弄清楚如何使用 wp_nav_menu 执行此操作。

我能想到的唯一方法是这样的......

但正如你所看到的,这显然行不通,因为代码非常错误,并且有各种各样的问题。我正在将页面/帖子循环与导航输出混合。

我陷入了真正的混乱,因为我不知道如何使用导航菜单处理诸如永久链接之类的其他内容,因为它们似乎是自动内置的,并且可能无法从 foreach 循环中使用get_permalink();.

基本上我只需要能够为每个项目添加其他元素......除非我可以在回显字符串中添加按钮(带有永久链接等)?非常感谢任何帮助或建议!

如果您想知道,它目前看起来像这样:

在此处输入图像描述

我试图让每个项目看起来像这样:

在此处输入图像描述

0 投票
1 回答
429 浏览

php - 在 wordpress 上为已注销的用户显示菜单项

我面临一个有点奇怪的问题。

我已经编辑并将 wp-login.php 页面设置为我的品牌,并设置了重定向,例如:
客户 > 我的帐户(登录后)
管理员/编辑器 > 管理面板(登录后)
等等。

但我的问题在于我正在使用的菜单。即使在我设置了重定向之后,我也尝试将 wp-login.php 页面作为自定义项添加到我的菜单上,但它似乎只出现在登录用户中,我还没有将其设置为这样做。

我想让登录和注销的用户都可以看到它,但是尽管我尝试了它似乎不起作用。

PS:我正在使用免费版本的 OcenWP 及其网站的默认菜单