2013-08-29 8 views
0

Каков наилучший способ изменить структуру HTML вашего меню WordPress (wp_nav_menu) без редактирования основных файлов. Есть еще один, который я хотел бы добавить в структуру html. Может ли кто-нибудь предложить какие-либо предложения о том, как это сделать лучше всего.Редактирование меню WordPress без изменения файлов ядра

Благодаря

Мои извинения, я должен был включать в HTML-код в качестве опорной точки. В принципе, я хотел бы заключить теги в набор интервалов.()

<nav id="access"> 
    <ul id="menu-sample-menu" class="menu"> 
     <li id="menu-item-198" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-198"><a href="http://www.threecell.com/demo/category/health-care-professional/">Health Care Professional</a> 

     </li> 
     <li id="menu-item-197" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-197"><a href="http://www.threecell.com/demo/category/web-designer/">Web Designer</a> 

      <ul class="sub-menu"> 
       <li id="menu-item-199" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-199"><a href="http://www.threecell.com/demo/category/construction-worker/">Construction Worker</a> 

       </li> 
      </ul> 
     </li> 
    </ul> 
</nav> 
+0

Что вам нужно добавить? Прочитали ли вы [Руководство пользователя меню WordPress] (http://codex.wordpress.org/WordPress_Menu_User_Guide)? – thgaskell

+0

Я только что обновил свой вопрос, чтобы включить код, с которым я работаю. Я хотел бы заключить анкерные метки в промежутке. Спасибо – user2325396

ответ

1

Используйте выборочный ходок, как описано в Wordpress Кодекса для wp_nav_menu, чтобы изменить то, как оказывается меню, без изменения основных файлов. Другие параметры, такие как $before, $after, $link_before, $link_after и $items_wrap могут обеспечить достаточную настройку для ваших нужд.

Если вам просто нужно добавить <span> тегов вокруг оказанного <a> тегов вы должны быть в состоянии использовать before и after параметров вместо реализации пользовательского ходок класса.

Например при вызове wp_nav_menu() в файле темы:

<?php 
wp_nav_menu(array('theme_location' => 'primary', 'before' => '<span>', 'after' => '</span>')); 
?> 
+0

Спасибо Ли за ссылку. Я буду читать об этом. Тем временем, я включил фактический код, который я бы хотел изменить. – user2325396

+0

Также ознакомьтесь с разделом [Пользовательское использование] (http://codex.wordpress.org/Class_Reference/Walker#General_Menu_Example) документа [Walker] (http://codex.wordpress.org/Class_Reference/Walker) – thgaskell

+0

Привет всем, у меня была возможность познакомиться с обычными классами ходока. В конце концов, где именно я объявляю этот класс? – user2325396

0

Смотрите этот пост: http://digwp.com/2011/11/html-formatting-custom-menus/

Что конкретно вы бы хотели добавить? Пользовательские контейнеры или дополнительный литий-элемент, например ..? Возможно, вы можете опубликовать пример структуры.

0

Вы можете изменить его, создав child theme. В вашей дочерней теме вы можете поместить все шаблоны-файлы, которые нуждаются в новом меню. Потому что, если вы напрямую редактируете файлы в родительской теме, они будут потеряны, когда тема get будет обновлена.

Если вам нужно изменить некоторые общие вещи, просто вызовите функцию my_nav_menu и скопируйте только функцию wp_nav_menu из функции function.php в основной каталог. Затем просто отредактируйте материал, который вам нужно изменить, а также переименуйте функцию в свое имя функции в шаблонных файлах вашей дочерней темы. Поэтому переименуйте wp_nav_menu в my_nav_menu.

Надеюсь, что вам помогут :)

+0

Спасибо за помощь, и совет был наиболее полезен. Возможно ли сделать то, что я ищу, чтобы не создавать дочернюю тему? – user2325396

+0

Вы используете тему Wordpress или пользовательскую? Потому что, как я уже сказал, вы также можете редактировать файлы тем своей родительской темы, но изменения будут потеряны при обновлении темы. Однако вам действительно нужно работать с пешеходами, как мне кажется, как говорят leepowers. – Mainz007

+0

Привет, Майнц, я использую настраиваемую тему. – user2325396

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