【问题标题】:WordPress multiple menu not workingWordPress多个菜单不起作用
【发布时间】:2015-04-14 22:00:57
【问题描述】:

我正在尝试在 WordPress 中创建多个菜单。实际上创建了菜单,我为它们分配了位置并保存了但是当我调用页脚菜单并保存它时的问题只是在页眉和页脚部分显示页脚菜单链接这是我的代码请帮助我找出我错的地方谢谢。我正在使用 WordPress 4.1

代码:Header.php

<nav class="site-nav">
                <?php
                    $args = array(
                        'theme_location' => 'primary'
                    );
                ?>
                <?php wp_nav_menu( 'args' );?>
            </nav>

代码:Footer.php

<nav class="site-nav">
    <?php
        $args = array(
            'theme_location' => 'footer'
        );
        ?>
        <?php wp_nav_menu( 'args' );?>
</nav>

代码:functions.php

function register_my_menu() {
register_nav_menus( array(
    'header' => 'Header menu',
    'footer' => 'Footer menu') );
}
add_action( 'init', 'register_my_menu' );

这是图片:

第一个标题菜单

页脚菜单

位置

结果

我错了

【问题讨论】:

    标签: php html css wordpress menu


    【解决方案1】:

    在functions.php中

    // Register Navigation Menus
    function register_my_menu() {
        $locations = array(
            'header' => 'Header Menu',
            'footer' => 'Footer Menu',
        );
        register_nav_menus( $locations );
    }
    add_action( 'init', 'register_my_menu' );
    

    在 header.php 中

    wp_nav_menu( array( 'theme_location' => 'header') );
    

    在footer.php中

    wp_nav_menu( array( 'theme_location' => 'footer') );
    

    确保通过“菜单”>“管理位置”再次检查,并且每个菜单上至少有一项。

    【讨论】:

    • 谢谢你的工作正常,但你能解释一下有什么问题吗?所以这对我有好处
    • @Hassan 在撰写本文时我不确定,所以我基本上是从正常方法重写它。现在仔细看后,我认为这部分主要是错误的wp_nav_menu( 'args' );应该是wp_nav_menu( $args );
    • @Hassan 如果没有其他问题,您会接受答案吗?
    【解决方案2】:

    我不确定这是否是解决方案。但是尝试将页脚的 args 重命名为 footer_args。

    【讨论】:

      【解决方案3】:

      看起来您的另一个菜单名为header,而不是primary。您可能只需要将Header.php 中的代码更改为

      $args = array(
          'theme_location' => 'primary'
      );
      

      $args = array(
          'theme_location' => 'header'
      );
      

      【讨论】:

        【解决方案4】:

        您可以通过wp_nav_menu函数中的菜单名称来显示没有主题位置的菜单。

        对于标题菜单

        wp_nav_menu( array('menu' => 'Header Menu' ));
        

        对于页脚菜单

         wp_nav_menu( array('menu' => 'Footer Menu' ));
        

        【讨论】:

          猜你喜欢
          • 2015-11-11
          • 2017-12-08
          • 2016-08-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-08-11
          相关资源
          最近更新 更多