Доползли до облака Тэгов

  • strict warning: Declaration of views_handler_field_user_name::init() should be compatible with views_handler_field_user::init(&$view, $data) in /var/www/shvabrashvabr.ru/sites/all/modules/views/modules/user/views_handler_field_user_name.inc on line 61.
  • strict warning: Declaration of views_handler_argument_many_to_one::init() should be compatible with views_handler_argument::init(&$view, $options) in /var/www/shvabrashvabr.ru/sites/all/modules/views/handlers/views_handler_argument_many_to_one.inc on line 169.


Покумекав понял что ничего непонял, ходил по различным сайтам в поиске решения или другого модуля...ан нету его, но решеньице нашел, спасибо Ромке, создается новый блок, куда пишется следующее содержимое:
<?php
$vocs = array(1,2,3,4);
$tags = tagadelic_get_weighted_tags($vocs, 6, 20);
$tags = tagadelic_sort_tags($tags);
$output = theme('tagadelic_weighted',$tags);
print $output;
?>
Естесственно все это при включенном фильтре пхп.
Все бы хорошо, однако есть нюанс, большой и плохой. Так если в новостях и в статьях встречаются одинаковые тэги и по весу они проходят в этот блок, то они оба и рисуются.
так например на моем сайте, посвященном акустике и звуку, greatsound.ru
в облаке тэгов можно видеть продублированное слово "Акустика" одно из которых ведет к новостям, а другое к статьям. Как с этим бороться?

Комментарии

Объясните пожалуйста что выводит этот код? Чем это отличается от блока с облаком тегов, который можно выбрать в меню блоков вашего сайта?

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

В идеале было бы хорошо чтобы формировалась страница, где собраны все материалы относительно выбранного тэга, неважно новости ли это или статьи, или же вообще фото.

А зачем тогда создавать тэг с одни и тем же именем в разных словарях? Друпал тэги различает не по имени, а по tid и если у тебя будет 10 тэгов с одинаковым именем для системы это все равно будет 10 разных тэгов и все они будут выводиться в облаке. Можно конечно напрячься и написать свою версию Тагаделик, которая будет учитывать не только тиды, но и имена, но, имхо, это не выход. Правильнее не создавать тэги с одинаковыми менами.

А как ты хочешь чтобы система себя вела в таком случае? Можно перехватить массив тэгов на выходе и удалить те, которые имеют одинаковые имена, только вот как решить какой тэг достоин попасть в облако, а какой нет?

Back to top