2015-10-03 2 views
0

Я пытаюсь создать собственное меню с помощью функциональности меню Wordpress.Пользовательская структура в списке в меню Wordpress

Это обычно выводит список для каждого элемента меню:

<ul> 
    <li><a href="#whatever">Element 1</a></li> 
    <li><a href="#whatever">Element 2</a></li> 
</ul> 

Но для моего дизайна, я хотел бы получить что-то подобное для каждого элемент в списке

<li class="whatever"> 
    <div class="imageWrap"> 
     <div class="image"></div> 
    </div> 
    <div class="content"> 
     <a href="#link_here"> 
      Title 
     </a> 
     <div class="whatever"> 
      <p>Title of description</p> 
      <p>Description</p> 
     </div> 
    </div> 
</li> 

Каким будет самый простой способ для этого?

Я читал this article, которые предлагают вместо этого использовать функцию wp_get_nav_menu_items. Но проблема в том, что я фактически не использую какую-либо функцию. Когда пользователь решит добавить в виджет в боковой панели или нижнем колонтитуле сайта, Wordpress общается с ним сам по себе.

ответ

1

Что вы ищете, это класс Walker_Nav_Menu. Измените HTML-код по мере необходимости.

Также необходимо отредактировать шаблон, который вызывает функцию wp_nav_menu (в основном файл header.php) и добавить к нему параметр walker.

+0

Я говорю о динамических меню, созданных на приборной панели. У меня нет функции 'wp_nav_menu' в любом из моих файлов PHP на боковой панели. Wordpress отображает меню, если пользователь добавляет виджет меню (или текст, если его текстовый виджет или что-то еще) – Alvaro

+0

Ну. Виджет * Menu *, о котором вы говорите, использует эту функцию в своем коде. Чтобы настроить структуру HTML, вам придется скопировать код из этого виджета и создать новый виджет. –

+0

Проверьте файл с именем 'default-widgets.php' в папке wp-includes и найдите код, который создает * Виджет меню * –

Смежные вопросы