Любые документы для аргумента wp_nav_menu â € œitems_wrapâ?

Я использую wp_nav_menu и пытаюсь создать собственный вывод для выпадающих подъязов. Я натолкнулся на аргумент «items_wrap», но информации о том, что это такое, как это работает, действительно мало информации, и что с ним можно сделать.

Что такое "% 1 $ s " и "% 2 $ s "? (Может ли кто-нибудь объяснить это с точки зрения непрофессионала?)

39 голосов | спросил RodeoRamsey 5 J0000006Europe/Moscow 2011, 09:01:58

2 ответа


51

Параметр 'items_wrap' для wp_nav_menu () по умолчанию:

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

Этот шаблон aa , который обрабатывается sprintf () :

  $ nav_menu. = sprintf (
    $ Args- & GT; items_wrap
, esc_attr ($ wrap_id) //% 1 $ s
, esc_attr ($ wrap_class) //% 2 $ s
, $ items //% 3 $ s
);
 

Пронумерованные заполнители â % 1 $ s , % 2 $ s , % 3 $ s - ссылаются на Аргументы после первого аргумента в sprintf () . Знак процента обозначает местозаполнитель, номер позиции и тип s означает, что он должен рассматриваться как строка.
Не изменяйте тип, если вы действительно не знаете, что делаете. :)

  • $ wrap_id - это параметр 'menu_id' , если он установлен, иначе это 'menu-'. $ Меню- & GT;. Пробкового
  • $ wrap_class - это параметр 'menu_class' , если он установлен, иначе он пуст.
  • $ items - это строка внутреннего содержимого меню.

Предположим, вам не нужен класс . Просто опустите вторую строку:

  wp_nav_menu (array ('items_wrap' => '<ul id = "% 1 $ s">% 3 $ s </ul>'));
 

Если вам не нужен класс и id , и вы хотите другой контейнер (потому что вы использовали пользовательский ходок ):

  wp_nav_menu (array ('items_wrap' => '<div>% 3 $ s </div>'));
 

Главное: вы должны использовать числа для замен, приведенных в wp_nav_menu () . % 3 $ s - это всегда список элементов.

ответил fuxia 5 J0000006Europe/Moscow 2011, 09:58:05
0

из того, что я собираю, он захватывает вывод и дает li id ​​и class с именем меню. Поэтому, когда вы хотите стилизовать определенное меню, вы получаете свой идентификатор и класс, если хотите его стилизовать. 1 и 2 - это просто другой выход.

ответил xLRDxREVENGEx 5 J0000006Europe/Moscow 2011, 09:12:36

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132