Estoy convirtiendo este menú html a wordpress:
<ul>
<li><a href="/" class="current"><span>Home</span></a></li>
<li><a href="/"><span>About</span></a></li>
</ul>
yo suelo:
wp_nav_menu(array(
'menu'=>'mainmenu' ,
'container' => false,
'link_before' => '<span>',
'link_after' => '</span>',
'theme_location' => 'primary')
);
pero el html que obtengo es:
<div class="menu">
<ul>
<li class="current_page_item"><a href="http://localhost/goodsoil/" title="Home"><span>Home</span></a></li>
<li class="page_item page-item-2"><a href="http://localhost/goodsoil/?page_id=2" title="About"><span>About</span></a></li>
</ul>
</div>
Si uso un menú personalizado, obtengo:
<ul id="menu-test" class="menu">
<li id="menu-item-6" class="menu-item menu-item-type-custom current-menu-item current_page_item menu-item-home menu-item-6"><a href="url/"><span>Home</span></a></li>
<li id="menu-item-5" class="menu-item menu-item-type-post_type menu-item-5"><a href="url/?page_id=2"><span>About</span></a></li>
</ul>
pero si no uso un menú personalizado 'contenedor' => falso no funciona ¿Alguna solución?
Respuestas:
[SOLUCIONADO] NO FUNCIONA cuando se refiere a una ubicación inexistente. por ejemplo, cuando copió el código de otro lugar, o aún no ha creado su menú o ubicación en el panel de control.
por ejemplo, eliminar ", 'theme_location' => 'primary'" del siguiente código:
entonces debería verse como
Funciona bien SIN contenedor en mi sitio web SocialBlogsiteWebDesign.com
fuente
appearance->menu
primero y luego llame alwp_nav_menu(array('menu'=>'<menu_name>','container'=>false))
http://codex.wordpress.org/Function_Reference/wp_nav_menu
fuente
if ( $args->container )
en el código,false
oempty string
no hace la diferencia.te estás refiriendo a la función alternativa de nav_menus. Esto es "wp_page_menu" y desafortunadamente no produce el mismo tipo de marcado que un menú personalizado.
Para solucionar esto, cree su propio menú de reserva. Estoy usando esto:
Es posible que deba cambiar esto ya que mi tema maneja los menús a su manera, pero creo que tiene la idea básica.
Y cuando llames
wp_nav_menu
hazlo comowp_nav_menu(array('fallback_cb' => 'my_page_menu'));
También puede hacer coincidir las clases con las de un menú personalizado usando esto:
De esta manera, reduce algunas reglas CSS ...
fuente
Desarrollé una solución simple y eficiente usando
str_replace
, que se puede aplicar por separado para usar en tablas de menú en lugar deul li
:fuente
Encontré la solución.
Simplemente use "ul" para 'contenedor'
fuente
Prueba esto
fuente