Раскрываемое меню на основе таксономии
Заметка 2009 года. Версии программ и описанные приёмы могли устареть.
Симпатичное меню на основе taxonomy, в котором каждый термин первого уровня раскрывается, показывая свои подтермины.
<?php
$vid = 1; // Id словаря, смените на нужный номер
$tree = taxonomy_get_tree($vid, 0, -1, 1);
print '<div class="kat">';
foreach ($tree as $term) {
$items = array();
$children = taxonomy_get_children($term->tid, $vid, 'tid');
foreach ($children as $child) {
$items[] = l($child->name, 'taxonomy/term/'. $child->tid);
}
$fieldset = array(
'#title' => $term->name,
'#collapsible' => TRUE,
'#collapsed' => TRUE,
'#value' => theme('item_list', $items),
'#attributes' => array('class' => 'accordian'),
);
print theme('fieldset', $fieldset);
}
print '</div>';
?>Единственный недостаток такого подхода - нельзя кликнуть на термин первого уровня, т.к. он завернут в legend
2 комментария
Tesmon
А слева "Навигатор" с помощью этого сниппета сделан?
Tesmon
Воспользовался сниппетом вижу, что это не он. А Вы не поделитесь ссылкой на тот, что у Вас в блоке? Заранее спасибо.
Новые комментарии закрыты: заметка из архива.