【问题标题】:WordPress menu has been assigned but not showingWordPress 菜单已分配但未显示
【发布时间】:2012-10-16 09:41:04
【问题描述】:

所以我对整个 WordPress 的东西还是很陌生,但无论如何我对 HTML/CSS 还是有经验的。我在 WordPress 的管理区域中创建了一个新菜单,但是当分配给主题时,它仍然无法正确显示。如果我在这里完全失明,请提前道歉,但 PHP 也不是我的强项。

下面是有问题的代码,与菜单在标题部分的位置有关:

<div id="nav-primary" class="nav"><nav>
    <?php if ( is_user_logged_in() ) {
        wp_nav_menu( array( 'theme_location' => 'logged-in-menu' ) ); /* if the visitor is logged in, this primary navigation will be displayed */
    } else {
        wp_nav_menu( array( 'theme_location' => 'header-menu' ) ); /* if the visitor is NOT logged in, this primary navigation will be displayed. if a single menu should be displayed for both conditions, set the same menues to be displayed under both conditions through the Wordpress backend */
    } ?>
</nav></div><!--#nav-primary-->

我知道“标题菜单”指向我设置的一个新菜单,但它没有显示正确的菜单。相反,它显示了很多菜单项,而我设置的菜单项只有 4 个。

任何人都可以对此有所了解吗?非常感谢您的帮助。

谢谢!

标记

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    检查这一步。

    1. 你是否在function.php文件中添加了这个函数。如果没有添加这个。

      /* 添加两个自定义菜单 */

                  function register_my_menus() {
                    register_nav_menus(
                      array(
                        'logged-in-menu' => __( 'Logged in Menu' ),
                        'header-menu' => __( 'Header Menu' )
                      )
                    );
                  }
                  add_action( 'init', 'register_my_menus' );
      
    2. 您是否从外观 > 菜单中为您的两个菜单选择了菜单?如果没有,则创建菜单并选择它。

    如果您需要任何帮助,请告诉我。

    编辑 登录和未登录使用菜单的新代码。

    /* Add two custom menu */ 
    function register_my_menus() { 
        register_nav_menus( 
            array( 'top-menu' => _( 'Top Menu' ), 
                'header-top-menu' => _( 'Header Top Menu' ) ) ); 
        } 
        add_action( 'init', 'register_my_menus' ); 
    
    
        <?php if ( is_user_logged_in() ) 
            { wp_nav_menu( array( 'theme_location' => 'top-menu' ) ); } 
            else { wp_nav_menu( array( 'theme_location' => 'header-top-menu' ) ); } 
            ?>
    

    【讨论】:

    • 我刚刚意识到我没有在外观 > 菜单下选择登录菜单。现在显示正常,但我在主菜单上方确实有一个小菜单。有没有办法在页眉区域有 2 个菜单?
    • 是的,您可以随心所欲地添加,只需在功能中再创建一个菜单并将其添加到收听文件中。
    • 好的,那么functions.php中的附加菜单应该是这样的吗? /* 添加两个自定义菜单 */ function register_my_menus() { register_nav_menus( array( 'logged-in-top-menu' => _( 'Logged in Top Menu' ), 'header-top-menu' => _( '标题顶部菜单') ) ); } add_action('init', 'register_my_menus');我将上面的代码添加到functions.php,然后在下面添加我希望附加菜单出现的地方? 'logged-in-top-menu' ) ); } else { wp_nav_menu( 数组( 'theme_location' => 'header-top-menu' ) ); } ?>
    • @MarkO'Donoghue 如果您认为此答案正确,请更正答案。
    • 成功了!最后!谢谢您的帮助!现在我只需要弄清楚如何设置该菜单的样式。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多