我很难得到活动菜单的名称,显然,我找不到这个问题的任何解决方案。基本上,我有几个菜单遵循这种模式:
菜单名称
我想显示当前页面项的菜单名,但找不到任何方法。我尝试使用get_nav_menu_locations()和get_term():
$theme_locations = get_nav_menu_locations();
$menu_obj = get_term($theme_locations["menu_1"], 'nav_menu');
$menu_name = $menu_obj->name;
然而,我需要动态地获取当前菜单的位置,在搜索答案/解决方案并没有找到任何具体的东西后,我只是假设当前菜单项和分配给它的菜单对象之间至少有一个数据库关系;从在那里我最终会得到菜单位置/术语ID。
PS:我想在不使用JS的情况下输出活动菜单标题
我编写了一个解决方案来突出显示WordPress菜单中当前活动的超链接。这是一个简单的PHP代码段,用于检查您是否在指定的页面ID上。
示例#1:
<?php if (is_page(2) || is_page(25)){ ?> OUTPUT CLASS HERE, MENU NAME (Menu Item 1, Menu Item 2) OR ANYTHING ELSE<?php } ?>
示例#2(我如何使用它):
<li class="nav_b<?php if (is_page(2) || is_page(25) || is_page(27) || is_page(30) || is_page(31)){ ?> current_page_item<?php } ?>"><a rel="external nofollow" class="app_tickets<?php if (is_page(2) || is_page(25) || is_page(27) || is_page(30) || is_page(31)){ ?> active<?php } ?>" href="/example-url/" onClick="_gaq.push(['_trackEvent', 'Tickets', 'Click', 'B', 1, false]);" title="Example Title">Example Hyperlink</a></li>
您可以轻松修改它以输出菜单名称!