3级深度导航菜单未显示所有级别

时间:2012-03-11 作者:Dwayne Charrington

我有一个3级的深度导航菜单,它将显示在除了主页以外的所有页面旁边。问题是,使用wp\\U nav\\U菜单显示时,菜单中仅显示了我的3个级别中的2个。我尝试过指定深度参数,但没有它也没有用。我正在使用Roots theme 如果有帮助的话。

有关菜单在“外观”>“菜单”部分中的显示方式,请参见下面的图像。

enter image description here

从上面可以看到的问题是,“生产解决方案”和“Avalanche”正在显示,但Avalanche下面的子项没有显示。而且它也不是一个样式化的东西,第三级也根本没有输出。我没有使用任何自定义Walker或任何东西,这是通过库存登记和显示导航菜单功能实现的。

This is the code that registers all of my nav menus:

register_nav_menus(array(
    \'accordion_navigation\' => __(\'Page Accordion Navigation\', \'roots\'),
    \'footer_navigation_left\' => __(\'Footer Navigation Left\', \'roots\'),
    \'footer_navigation_solutions\' => __(\'Footer Product Solutions\', \'roots\'),
    \'footer_navigation_news\' => __(\'Footer News & Events\', \'roots\'),
    \'footer_navigation_about\' => __(\'Footer About\', \'roots\')
));

In my page template I have this code for displaying the menu:

wp_nav_menu(array(\'theme_location\' => \'accordion_navigation\'));
我错过什么了吗?

2 个回复
最合适的回答,由SO网友:Dwayne Charrington 整理而成

我最终解决了这个问题,这是因为根主题中的默认值覆盖了名为wp\\u nav\\u menu\\u args的钩子的深度参数(我甚至不知道是钩子)。代码可以在“inc”文件夹中主题的根目录中找到,这是一个名为root cleanup的文件。php。

The original code looks like this:

function roots_nav_menu_args($args = \'\') {
  $args[\'container\']  = false;
  $args[\'depth\']      = 2;
  $args[\'items_wrap\'] = \'<ul class="nav">%3$s</ul>\';
  if (!$args[\'walker\']) {
    $args[\'walker\'] = new Roots_Nav_Walker();
  }
  return $args;
}
正如大家所看到的,深度值被设置为2,即使在wp\\u nav\\u菜单函数上指定一个深度参数似乎也没有什么不同,这个函数正是覆盖深度的菜单参数。

我所做的只是将深度增加到一个更高的值,我永远不会达到8,就像这样:

function roots_nav_menu_args($args = \'\') {
  $args[\'container\']  = false;
  $args[\'depth\']      = 8;
  $args[\'items_wrap\'] = \'<ul class="nav">%3$s</ul>\';
  if (!$args[\'walker\']) {
    $args[\'walker\'] = new Roots_Nav_Walker();
  }
  return $args;
}
这里学到的教训是始终确保插件或主题框架挂钩不会改变某些东西。我希望这能帮助其他人使用根主题并尝试使用多级菜单。

SO网友:tolginho

如果HTML中存在深层菜单,但悬停时未显示,请将以下代码添加到CSS文件中:

.dropdown-menu li:hover a+ul {
     display: block;
     top: 80%; // optional
}

结束

相关推荐

WooThemes PremiumNews主题jQuery与WordPress 3.2冲突

今天早上我更新了我的wp,之后我的站点上的jquery很少出现问题。我正在使用woo主题高级报纸主题。升级后,类别下拉菜单(superfish菜单)停止工作。我在使用lightbox插件制作图像,结果停止了工作。我停用了所有插件并检查了主题,但superfish仍然不起作用,我用最新的主题框架更新了主题框架,但仍然没有效果。有人能帮我吗?我的网站URL是:http://webstutorial.com/and我使用的主题是:http://demo.woothemes.com/?name=premiumne