Как сделать так чтобы общее облако тегов ( т.е. всех словарей, которое находится по ссылке http://example.com/Tagadelic ) отображалось в виде блока на всех страницах сайта? Видел модуль для связки Виевс с Tagadelic, но он только для 5ой версии Друпала. Может есть другой способ?
Комментарии
Другой способ всегда есть! Можно написать сниппет, который будет выводить то, что вам нужно. Можно хакнуть модуль и добавить тот функционал, которого не хватает (и поделиться с автором).
И т.д.
Да, а можно еще самому написать CMS, где это все будет:). Проще методы есть?
Проще метод - поискать еще, может и сниппет найдете...
можно сделать блок со следующим содержимым и вставлять его на все страницы
$block = module_invoke('tagadelic', 'block', 'view', 0);
print $block['title'];
print $block['content'];
?>
данный сниппет вызывает модуль tagadelic, в нём - хук block, у хука - операцию view, а последняя цифра - это дельта блока (ее можно посмотреть на странице со списком всех блоков). Вызвав блок и записав его в $block, сниппет затем выводит заголовок и содержимое.
спасибо огромное, очень пригодилось
есть снипет вывода облака из тех словарей, которые нужны
$vocs = array(1,3,4); //Список словарей
$tags = tagadelic_get_weighted_tags($vocs, 6, 20);
$tags = tagadelic_sort_tags($tags);
$output = theme('tagadelic_weighted',$tags);
print $output;
?>
спасибо всем:)
А как сделать чтоб еще кол-во материалов в теге показывало, типа "Тег_1(17)"???
Нужно темизировать:
* theme function that renders the HTML for the tags
* ingroup themable
*/
function THEME_tagadelic_weighted($terms) {
foreach ($terms as $term) {
$output .= l($term->name, taxonomy_term_path($term), array('class'=>"tagadelic level$term->weight", 'rel'=>'tag')) . "<span>" . " (".$term->number_of_posts.")" . "</span> \n";
}
return $output;
}
Количество материалов содержится в переменной $term->number_of_posts
спасибо, очень пригодилось