Создание меню (списка рубрик) с активным пунктом меню.
На одной из страниц возникла необходимость вывести список рубрик (таксономий), которые оформлены в виде меню
$terms_personal = get_terms("personal"); $count = count($terms_personal); if($count > 0){ echo '<ul id="personal">'; foreach ($terms_personal as $term_workman) { echo "<li>" . $term_workman->name . "</li>"; } echo '</ul>'; }
Таким образом получаем список рубрик
<ul id="personal"> <li>Администраторы</li> <li>Консультанты</li> <li>и т.д.</li> </ul>
Однако есть необходимость чтобы первый пункт меню li содержал в себе class=»active», который в свою очередь исчезал и появлялся при переходе на другой пункт меню.
(вариант при запуске страницы)
<ul id="personal"> <li class="active">Администраторы</li> <li>Консультанты</li> <li>и т.д.</li> </ul>
(вариант при переходе на вкладку «Консультанты»)
<ul id="personal"> <li>Администраторы</li> <li class="active">Консультанты</li> <li>и т.д.</li> </ul>
Не проверял на практике, чисто теоретический код накидал:
Списибо за код. Попробовал его использовать. При загрузке страницы у html-кода появляется class='item', который берется из переменной $class. Однако класс "active" так и не появился у первой строки меню после загрузки страницы.
Когда вы более подробно расскажите, как построено ваше веб-приложение, тогда можно будет рассуждать, как сделать правильнее.
« Однако есть необходимость чтобы первый пункт меню li содержал в себе class=»active», который в свою очередь исчезал и появлялся при переходе на другой пункт меню. »
Что это значит? Просто мышкой водить по пунктам? При переходе в нужный тёрм? Полную логику опишите работы с таким меню.
Ну я через WordPress пытаюсь сделать вывод постов как в этом jQuery-плагине https://vestride.github.io/Shuffle/
Собственно я у себя на "Денвере" уже практически все сделал. Подключил скрипт, настроил стили. Настроил вывод картинок через произвольные типы записей и вывел меню.
То-есть по сути все-работает. Но на старте выводятся абсолютно все данные и выводятся они немного криво из-за того, что у первой строки (хотя необязательно какой строки) отсутствует класс "active". Однако если нажать на любую кнопку, то класс "active" появляется у выбранного пункта меню, но это уже работа скрипта.
Если взять твой код и чуток доработать, то выйдет вот так: