php - 使用 bootstrap 3 在自定义主题中注册和使用菜单

标签 php css wordpress twitter-bootstrap

我正在创建我的第二个自定义 WordPress 主题并遇到问题。

我在第一个主题中使用了相同的方法并且效果很好,但这次当然不行。

我像这样在 functions.php 中注册了我的菜单:

<?php  
//Register main menu
function register_theme_menu() {
    register_nav_menu( 'primary', 'Main Navigation Menu' );
}
add_action( 'init', 'register_theme_menu' );
?>

然后像这样在我的 header.php 中调用菜单:

<!-- Menu -->   
                    <nav class="navbar navbar-inverse navbar-fixed-top bs-docs-nav" role="banner">
                        <div class="navbar-header">
                          <button class="navbar-toggle collapsed" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse">
                            <span class="sr-only">Toggle navigation</span>
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                          </button>
                        </div>
                        <nav class="navbar-collapse bs-navbar-collapse collapse" role="navigation">
                          <ul class="nav navbar-nav">
                            <?php wp_nav_menu( array( 
                                    'theme_location' => 'main-menu',
                                    'menu_class' => 'nav navbar-nav'
                            ) ); ?>
                          </ul>
                        </nav>
                <!-- End menu -->

我在 WP 后端设置了 mu 菜单,但它没有响应,它只是在前端列出了我的所有页面。我哪里错了?

谢谢

最佳答案

这是因为您已将 primary 作为 register_nav_menu() 函数的第一个参数传入,并且您正在将 main-menu 传入模板。

<nav class="navbar navbar-inverse navbar-fixed-top bs-docs-nav" role="banner">
    <div class="navbar-header">
        <button class="navbar-toggle collapsed" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        </button>
     </div>
<nav class="navbar-collapse bs-navbar-collapse collapse" role="navigation">
    <ul class="nav navbar-nav">
    <?php wp_nav_menu( array( 
        'theme_location' => 'primary',
        'menu_class' => 'nav navbar-nav'
     ) ); ?>
     </ul>
</nav>

无偿建议

最好使用 https://github.com/twittem/wp-bootstrap-navwalker对于 Wordpress/Bootstrap 主题,因为菜单很难实现。网上有很多关于如何实现它的教程。这是因为如果你的关卡超过 2 层,菜单就会中断 :-( 糟糕的时候。

关于php - 使用 bootstrap 3 在自定义主题中注册和使用菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27757881/

相关文章:

php - 未捕获的异常 'PDOException',消息即将到来

css - 样式栏文本类型属性

html - 在桌面上设置图像大小,但在使用移动设备时调整大小

javascript - CSS 高度 100% 在溢出时不起作用

html - 为什么 max-width 上的媒体查询不起作用?

php - 将使用支票付款方式制作的订单状态更改为 "processing"状态

javascript - 简化包含多个条目的 JavaScript 代码

php - 第 36 行的 fatal error : Call to undefined function session_register() in/home/bakewell/public_html/inventory/config. inc.php

javascript - WordPress 中的 AJAX 表单提交无法正常工作(续...)

php - Woocommerce 中的自定义动态运费成本计算