Вставка своего тега с классом в меню, определение ярлы
-
Доброго времени.
Необходимо было вставить свой тег с css классом в меню wp_nav_menu, нашел код, который вставляет, но столкнулся с проблемой, этот код не определят slug(ярлык) рубрики, а определяет только Страницы.function add_slug_class_to_menu_item($output){ $ps = get_option('permalink_structure'); if(!empty($ps)){ $idstr = preg_match_all('/<li id="menu-item-(\d+)/', $output, $matches); foreach($matches[1] as $mid){ $id = get_post_meta($mid, '_menu_item_object_id', true); $slug = basename(get_permalink($id)); $output = preg_replace('/menu-item-'.$mid.'">/', 'menu-item-'.$mid.' menu-item-'.$slug.'"><span class="'.$slug.'"></span>', $output, 1); } } return $output; } add_filter('wp_nav_menu', 'add_slug_class_to_menu_item');
То есть он без проблем выводит по умолчанию: Главная, Пример страницы. А когда в меню добавляю рубрику, то идет пустое место. Вот собственно тег, который мне было необходимо вывести перед ссылкой меню: <span class=»‘.$slug.'»></span>
Для пояснения:
Структура ссылки такая у меня сейчас:
<li class="name"><a href="link">Food</a></li>
А необходимо сделать вот так<li class="name"><span class="food"></span> <a href="link">Food</a></li> <li class="name"><span class="auto"></span> <a href="link">Auto</a></li> <li class="name"><span class="forum"></span> <a href="link">Forum</a></li>
food, auto, forum — это ярлыки рубрик, которые можно менять при создании рубрик. вот именно ярлыки рубрик нужно определить и вывести в теги, как класс
Я когда поставил код, думал, ну все, теперь будет без проблем определять ярлык рубрики и выводить его в класс тега, но не могу понять, в чем проблема.
Может кто помочь решить данную проблему или найти другой способ вывода перед ссылкой своего тега с классом?
- Тема «Вставка своего тега с классом в меню, определение ярлы» закрыта для новых ответов.