Come aggiungere una classe ul al nav
Sto imparando a convertire l'HTML in WordPress e voglio convertire la classe in questo modo:
<div class="mainmenu pull-left">
<ul class="nav navbar-nav collapse navbar-collapse">
<li><a href="index.html" class="active">Home</a></li>
<li class="dropdown"><a href="#">Negozio<i class="fa fa-angle-down"></i></a>
<ul role="menu" class="sub-menu">
<li><a href="shop.html">Prodotti</a></li>
<li><a href="product-details.html">Dettagli Prodotto</a></li>
<li><a href="checkout.html">Checkout</a></li>
<li><a href="cart.html">Carrello</a></li>
<li><a href="login.html">Accedi</a></li>
</ul>
</li>
<li class="dropdown"><a href="#">Blog<i class="fa fa-angle-down"></i></a>
<ul role="menu" class="sub-menu">
<li><a href="blog.html">Lista Blog</a></li>
<li><a href="blog-single.html">Blog Singolo</a></li>
</ul>
</li>
<li><a href="404.html">404</a></li>
<li><a href="contact-us.html">Contatti</a></li>
</ul>
</div>
Questo è quello che ho fatto:
if ( ! function_exists( 'mytheme_setup' ) ) :
function wpflex_setup() {
register_nav_menus( array(
'primary' => 'Menu Principale'
) );
}
endif;
wp_nav_menu( array(
'theme_location' => 'top-menu',
'container' => '',
'menu_class' => 'mainmenu pull-left',
) );
Come posso aggiungere una classe per ul
?
Lo hai già fatto nel modo giusto. Se dai un'occhiata alla documentazione per wp_nav_menu, vedrai che menu_class è l'opzione corretta per la classe dell'UL:
wp_nav_menu( array(
'theme_location' => 'top-menu',
'container' => '',
'menu_class'=> 'mainmenu pull-left *aggiungi-la-tua-classe-qui*'
) );

WordPress crea il menu delle pagine predefinito in modo diverso dai menu attivi - quelli che crei e assegni nel backend. Non esiste un modo diretto per aggiungere classi all'elemento UL nei menu delle pagine, ma ci sono altri metodi. Prova ad aggiungere questo al tuo functions.php
function add_id_and_classes_to_page_menu( $ulclass ) {
return preg_replace( '/<ul>/', '<ul id="main-menu" class="nav navbar-nav collapse navbar-collapse">', $ulclass, 1 );
}
add_filter( 'wp_page_menu', 'add_id_and_classes_to_page_menu' );
Tieni presente che questo sostituirà qualsiasi id e classe esistenti, quindi li ho riaggiunti nell'esempio sopra. Ho anche aggiunto un id="main-menu" per completezza.
