Вывод «родительских» терминов определенного словаря.

Иногда бывает нужен вывод терминов из какого-либо словаря, но не всех, а только «родительских».

Особенно полезно, когда в словаре, из которого мы эти термины выводим, скопилось тех терминов с «подтерминами» великое множество. И если выводить их все, то «портянка» занимает немалое количество «прокруток» вниз страницы.

Собственно решением вышеописанной задачи приведенный в данной ноде код и является.

<?php
$vid = 1; //Тут вписываем ID нашего словаря.
$terms = taxonomy_get_tree($vid);
print '<div id="menu"><ul>'; //Оформляем выводимый код HTML-тегами.
foreach ($terms as $term) {
if ($term->depth == 0) {
print "<li>".l($term->name,'taxonomy/term/'.$term->tid, array('title' => $term->name))."</li>";
}
}
print '</ul></div>';
?>

Dalay

Комментарии

А как получить родителя текущего термина? Только вместе с синонимом, т.к. вариант 'taxonomy/term/'.$term->tid, не катит, нужно что-то вроде term_path

хотелось бы еще вывести не только термины, но и их изображения (использую модуль Taxonomy Image).
буду благодарна, если подскажете, как?

 if (function_exists('taxonomy_image_display')) {
    $image_and_termname .= taxonomy_image_display($term->tid, NULL, NULL, array('wrapper' => FALSE));
}

спасибо большое!
нашла также вот такое решение, через запрос к базе данных:
$result1 = db_query("select path from {term_image} where tid=%d",$term->tid);
$node1 = db_fetch_array($result1);
$img=$node1['path'];
print '';