【问题标题】:WordPress Menu Improperly Renders to Theme LocationWordPress 菜单不正确地呈现到主题位置
【发布时间】:2019-03-06 02:54:29
【问题描述】:

在从头开始构建 WordPress 主题时,我希望主菜单出现在网页顶部附近,页脚菜单出现在网页底部附近。以下是我注册导航菜单的方式:

register_nav_menus(array(
  'header-menu'     =>  'Meta Music Header Menu',
  'footer-menu'     =>  'Meta Music Footer Menu'
));

主菜单放在'header.php'中:

<body <?php body_class(); ?>>
  <div id='header-menu'>
    <?php wp_nav_menu( 'theme_location', 'header-menu' ); ?>
  </div>

页脚菜单放在'footer.php'中:

<footer id='site-footer'>
  <?php dynamic_sidebar( 'metamusic-footer-widget' ) ?>
  <?php wp_nav_menu( 'theme_location', 'footer-menu' ); ?>
</footer>

据我所知,自定义导航菜单已正确放置和注册。自然地,它们需要被设计成更令人愉悦的视图。但是,我担心的是这些展示位置不会反映在 HTML 呈现中。随附的屏幕截图描述了自定义菜单及其 HTML 渲染。请注意,页面顶部的主菜单呈现为页脚菜单。

我哪里出错了?我检查了 WordPress Codex,我的代码符合要求。

感谢您的反馈。

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    我认为问题在于您没有正确使用 wp_nav_menu() 函数,导致它只显示第一个可用的非空菜单。

    尝试:

    wp_nav_menu( array(
    'menu' => 'footer-menu'
    ) );
    

    这应该调用正确的菜单项。您还应该将页眉代码替换为相同的代码,并将页脚的引用更改为页眉,以确保调用正确的菜单。

    【讨论】:

    • 谢谢。是的,我使用了不正确的语法。导航菜单位置应如下所示:
    猜你喜欢
    • 2011-12-04
    • 2019-12-02
    • 1970-01-01
    • 1970-01-01
    • 2012-07-21
    • 1970-01-01
    • 2010-11-13
    • 2023-03-29
    • 1970-01-01
    相关资源
    最近更新 更多