Вывод списка дочерних терминов только для существующих нод. Сниппет

Выведем список дочерних терминов только для существующих нод. То есть у нас есть ноды с терминами таксономии. Например, нам нужно выводить дочерние термины при выбранном(текущем) термине.
Написанное актуально для Drupal 6.
Добавляем новый блок тут: /admin/build/block/add.
Вывод делаем php code. В текст блока пишем:

tid)) {//если есть еще более дочерний уровень, то выводим
      if (taxonomy_term_count_nodes($child->tid) > 0) {     
         $items[] = l($child->name, 'taxonomy/term/'. $child->tid);
          $cnt++;
       }

    }
  }
  }
  if ($cnt <= 0)
    return FALSE;
  $fieldset = array(
    '#title' => $term->name." (производители)",
    '#collapsible' => TRUE,
    '#collapsed' => FALSE,
    '#value' => theme('item_list', $items),
    '#attributes' => array('class' => 'accordian'),
  );
  print theme('fieldset', $fieldset);

 }
?>

В настройках блока ставим "Показывать только на перечисленных страницах" и добавляем страницу:
taxonomy/term/*

Сохраняем блок и настраиваем отображение в нужной нам области.

Рекомендовать в Социальных сетях:
 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Источник: roskor.com