2017-12-21 19 views
1

私のメニューはそのままにしておきたい。ブートストラップするAdact wordpressメニュー

<ul class="navbar-nav ml-auto"> 
    <li class="nav-item active"> 
    <a class="nav-link" href="#">Inicio 
     <span class="sr-only">(current)</span> 
    </a> 
    </li> 
    <li class="nav-item"> 
    <a class="nav-link" href="#">Nosotros</a> 
    </li> 
    <li class="nav-item"> 
    <a class="nav-link" href="#">Contactanos</a> 
    </li> 
</ul> 

私はfunctions.php

<?php 

register_nav_menus([ 
    'menu_top' => 'Menu superior' 
]); 

?> 

ファイルに

<ul class="navbar-nav ml-auto"> 
    <?php 
    wp_nav_menu([ 
     'container'  => false, 
     'items_wrap'  => '%3$s', 
     'theme_location' => 'menu_top'    
    ]); 
    ?> 
</ul> 

を次のようにそれをやろうけど、私はこれを達成すると、次の

<ul class="navbar-nav ml-auto"> 
    <li id="menu-item-4" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-4"><a href="#">inicio</a></li> 
</ul> 

などを取得することです私は私が欲しいクラスを配置するために、オプションがactiveであることを指定しています。私はあなたのメニューのアイテムを収集し、foreachのでそれらを印刷することができ、このコードでは、ブートストラップ4.

答えて

1

を使用しています:

<?php 
    $currentURL   = home_url($_SERVER['REQUEST_URI']);      
    $menuItemCollection = wp_get_nav_menu_items('menu_top'); 
?> 

<ul class="navbar-nav ml-auto"> 
    <?php foreach ($menuItemCollection as $menuItem): ?> 
    <?php $activeClass = ($menuItem->url == $currentURL) ? ' active' : ''; ?> 

    <li class="nav-item<?php echo $activeClass; ?>"> 
     <a class="nav-link" href="<?php echo $menuItem->url; ?>">           
     <?php echo $menuItem->title; ?> 
     </a> 
    </li> 

    <?php endforeach; ?> 
</ul> 
+0

私はあなたのコードを試してみましたが、この 'wp_get_nav_menu_items(「menu_top」)を行います;'ヌル、いくつかのアイデアが来る。 –

+0

あなたは管理者の 'Menu superior'にアイテムを持っていますか? – aruqen

+0

ya lo resolvi、gracias –

関連する問題