El parámetro 'items_wrap'por wp_nav_menu()defecto es:
'<ul id="%1$s" class="%2$s">%3$s</ul>'
Esta es una plantilla que se analiza con sprintf():
$nav_menu .= sprintf(
$args->items_wrap
, esc_attr( $wrap_id ) // %1$s
, esc_attr( $wrap_class ) // %2$s
, $items // %3$s
);
Los marcadores de posición numeradas - %1$s, %2$s, %3$s- se refieren a los argumentos después de que el primer argumento en sprintf(). El signo de porcentaje marca un marcador de posición, el número, la posición y el tipo ssignifica que debe tratarse como una cadena.
No cambie el tipo a menos que realmente sepa lo que hace. :)
$wrap_ides el parámetro 'menu_id'si lo tiene configurado, de lo contrario lo es 'menu-' . $menu->slug.
$wrap_classes el parámetro 'menu_class'si lo tiene configurado, de lo contrario está vacío.
$items es una cadena del contenido interno del menú.
Digamos que no necesitas un class. Simplemente omita la segunda cadena:
wp_nav_menu( array( 'items_wrap' => '<ul id="%1$s">%3$s</ul>' ) );
Si no necesita el classy el id, y desea otro contenedor (porque usó un andador personalizado ):
wp_nav_menu( array( 'items_wrap' => '<div>%3$s</div>' ) );
El punto principal es: debe usar los números para los reemplazos dados en wp_nav_menu(). %3$sEs siempre la lista de artículos.
items_wrapcómo lo harías.de lo que deduzco, toma una salida y le da al li una identificación y clase con el nombre del menú. Entonces, cuando desee diseñar un menú en particular, tome su id y / o clase si desea diseñarlo. el 1 y 2 es solo una salida diferente.
fuente