items_wrap не работает

Я зарегистрировал WordPress меню таким образом:

function nothing_register_menus() { register_nav_menu('header-menu',__( 'Header Menu' )); } add_action( 'init', 'nothing_register_menus' ); 

Я вызываю wp_nav_menu таким образом:

 wp_nav_menu( array( 'theme_location' => 'header-menu', 'container' => false, 'echo' => false, 'menu_class' => 'nav-menu horiz-menu container', 'items_wrap' => '<ul class="sixteen columns">%3$s</ul>' ) ) 

Но вывод всегда выглядит одинаково. Класс меню правильный, но у wrapping ul никогда не будет класса.

Solutions Collecting From Web of "items_wrap не работает"

ваша проблема заключается в том, что вы используете 'menu_class' и 'items_wrap' не синхронизированы.

Вы можете редактировать:

 wp_nav_menu( array( 'theme_location' => 'header-menu', 'container' => '', 'echo' => '0', 'menu_class' => 'nav-menu horiz-menu container sixteen columns', 'items_wrap' => '<ul class="%2$s">%3$s</ul>' ) ) 

или:

 wp_nav_menu( array( 'theme_location' => 'header-menu', 'container' => '', 'echo' => '0', 'items_wrap' => '<ul class="nav-menu horiz-menu container sixteen columns">%3$s</ul>' ) ) 

Извиняюсь за мой английский, это плохо!

Прямо от кода :

$ items_wrap (string) (необязательно) Оценивается как аргумент строки формата выражения sprintf (). Строка формата включает другие параметры с помощью нумерованного токена. % 1 $ s расширяется до значения параметра «menu_id»,% 2 $ s расширяется до значения параметра «menu_class», а% 3 $ s увеличивается до значения элементов списка. Если пронумерованный токен не указан в строке формата, соответствующий параметр не указывается в разметке меню. По умолчанию:% 3 $ s

Поэтому ваши items_wrap должны выглядеть так:

 'items_wrap' => '<ul class="%2$s">%3$s</ul>' 

где %2$s будет заменено «контейнером меню навигационного меню».

Я не знаю, где вы ожидаете, чтобы классы «шестнадцати столбцов» отображались.