我正在尝试为一个网站创建一个额外的导航菜单。我首先遵循了一些指南,但已经恢复到复制粘贴主题导航栏进行调试,但这并没有解决我的问题。
当我向WordPress菜单添加子菜单时,这些子菜单只是作为菜单项出现在菜单下面,而不是在下拉列表中。
请访问https://myrightdev.funka.website/网站

我可以从chrome dev工具中看到,主导航栏(带有徽标的那个)获得了一个for菜单项。但是我不确定这段代码是在什么地方插入的。有关我的详细信息,请参阅我的header.php,辅助导航菜单名为secondary_navigation
<?php
/**
* Header file for the Twenty Twenty WordPress default theme.
*
* @link https://developer.wordpress.org/themes/basics/template-files/#template-partials
*
* @package WordPress
* @subpackage Twenty_Twenty
* @since Twenty Twenty 1.0
*/
?><!DOCTYPE html>
<html class="no-js" <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo('charset'); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="profile" href="https://gmpg.org/xfn/11">
<?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
<?php
wp_body_open();
?>
<header id="site-header" class="header-footer-group" role="banner">
<?php
if (has_nav_menu('secondary_navigation') || !has_nav_menu('expanded')) {
?>
<div class="header-navigation-wrapper">
<nav class="secondary-menu-wrapper"
>
<ul class="secondary-menu reset-list-style">
<?php
if (has_nav_menu('secondary_navigation')) {
wp_nav_menu(array(
'container' => '',
'items_wrap' => '%3$s',
'menu_class' => 'secondaryMenuClass',
'theme_location' => 'secondary_navigation',
));
} elseif (!has_nav_menu('expanded')) {
wp_list_pages(
array(
'match_menu_classes' => true,
'show_sub_menu_icons' => true,
'title_li' => false,
'walker' => new TwentyTwenty_Walker_Page(),
)
);
}
?>
</ul>
</nav>
</div>
<?php
}
?>
<div class="header-inner section-inner">
<div class="header-titles-wrapper">
<?php
// Check whether the header search is activated in the customizer.
$enable_header_search = get_theme_mod('enable_header_search', true);
if (true === $enable_header_search) {
?>
<button class="toggle search-toggle mobile-search-toggle" data-toggle-target=".search-modal"
data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field"
aria-expanded="false">
<span class="toggle-inner">
<span class="toggle-icon">
<?php twentytwenty_the_theme_svg('search'); ?>
</span>
<span class="toggle-text"><?php _e('Search', 'twentytwenty'); ?></span>
</span>
</button><!-- .search-toggle -->
<?php } ?>
<div class="header-titles">
<?php
// Site title or logo.
twentytwenty_site_logo();
// Site description.
twentytwenty_site_description();
?>
</div><!-- .header-titles -->
<button class="toggle nav-toggle mobile-nav-toggle" data-toggle-target=".menu-modal"
data-toggle-body-class="showing-menu-modal" aria-expanded="false"
data-set-focus=".close-nav-toggle">
<span class="toggle-inner">
<span class="toggle-icon">
<?php twentytwenty_the_theme_svg('ellipsis'); ?>
</span>
<span class="toggle-text"><?php _e('Menu', 'twentytwenty'); ?></span>
</span>
</button><!-- .nav-toggle -->
</div><!-- .header-titles-wrapper -->
<div class="header-navigation-wrapper">
<?php
if (has_nav_menu('primary') || !has_nav_menu('expanded')) {
?>
<nav class="primary-menu-wrapper" aria-label="<?php esc_attr_e('Horizontal', 'twentytwenty'); ?>"
role="navigation">
<ul class="primary-menu reset-list-style">
<?php
if (has_nav_menu('primary')) {
wp_nav_menu(
array(
'container' => '',
'items_wrap' => '%3$s',
'theme_location' => 'primary',
)
);
} elseif (!has_nav_menu('expanded')) {
wp_list_pages(
array(
'match_menu_classes' => true,
'show_sub_menu_icons' => true,
'title_li' => false,
'walker' => new TwentyTwenty_Walker_Page(),
)
);
}
?>
</ul>
</nav><!-- .primary-menu-wrapper -->
<?php
}
if (true === $enable_header_search || has_nav_menu('expanded')) {
?>
<div class="header-toggles hide-no-js">
<?php
if (has_nav_menu('expanded')) {
?>
<div class="toggle-wrapper nav-toggle-wrapper has-expanded-menu">
<button class="toggle nav-toggle desktop-nav-toggle" data-toggle-target=".menu-modal"
data-toggle-body-class="showing-menu-modal" aria-expanded="false"
data-set-focus=".close-nav-toggle">
<span class="toggle-inner">
<span class="toggle-text"><?php _e('Menu', 'twentytwenty'); ?></span>
<span class="toggle-icon">
<?php twentytwenty_the_theme_svg('ellipsis'); ?>
</span>
</span>
</button><!-- .nav-toggle -->
</div><!-- .nav-toggle-wrapper -->
<?php
}
if (true === $enable_header_search) {
?>
<div class="toggle-wrapper search-toggle-wrapper">
<button class="toggle search-toggle desktop-search-toggle"
data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal"
data-set-focus=".search-modal .search-field" aria-expanded="false">
<span class="toggle-inner">
<?php twentytwenty_the_theme_svg('search'); ?>
<span class="toggle-text"><?php _e('Search', 'twentytwenty'); ?></span>
</span>
</button><!-- .search-toggle -->
</div>
<?php
}
?>
</div><!-- .header-toggles -->
<?php
}
?>
</div><!-- .header-navigation-wrapper -->
</div><!-- .header-inner -->
<?php
// Output the search modal (if it is activated in the customizer).
if (true === $enable_header_search) {
get_template_part('template-parts/modal-search');
}
?>
</header><!-- #site-header -->
<?php
// Output the menu modal.
get_template_part('template-parts/modal-menu');我已经尽了最大的努力来复制标准的二十主题菜单的菜单功能,这是在二级导航菜单下面。关于如何使这些子菜单项的行为像2020菜单上的子菜单项,您有什么想法吗?
发布于 2020-06-06 00:07:13
正如@CBroe所说,这是一个风格问题。如果您正在尝试获取悬停时出现的下拉列表,则需要修改CSS。
.secondary-menu > .sub-menu {
display: none;
}
.secondary-menu li:hover > .sub-menu,
.secondary-menu li:focus > .sub-menu {
display: block;
}https://stackoverflow.com/questions/62212455
复制相似问题