|
InstantCMS
Расширенное облако тегов
Доброго всем времени суток.
Смотрю опять поднимается вопрос по облаку тегов. Некоторое время назад общими усилиями был создан модуль "Flash-облако тегов". Кто-то нашел, Наталья (Солнечный ребенок) - интегрировала с движком. А ваш скромный слуга подтесал напильничком ![]() Модуль, кроме настроек в админке, имеет еще следующие настройки в файле самого модуля: -количество отображаемых в облаке тегов -кому в каком виде показывать облако. Варианты показа - текстовый или флеш. Можно настроить: всем показывать текстовый; всем показывать флеш; гостям показывать текстовый, а пользователям - флеш; всем показывать текстовый, а админу - флеш. Короче, у кого какая фантазия. Установка модуля:1. Скачиваем файл содержащий все необходимое2. Загружаем все файлы в папку: www.ваш_сайт/ 3. В файле www.ваш_сайт/templates/ваша_тема/template.php перед: </head> добавляем: <script src=’/modules/mod_tags/swfobject.js’ type=’text/javascript’></script> 4. Количество тэгов настраивается в файле /modules/mod_tags/modules.php в строке 13: $kvo_tags=50; Выставляем нужное количество тегов. Сейчас 50. 5. Настраиваем вид вывода облака тегов. Строка 85 сейчас выглядит так: if ( cmsUserId() == 0 ){ Возможные варианты: cmsUserId() == 0 - неавторизированные пойдут по ветке текстового облака, а авторизированные по ветке флеш-облака cmsUserId() >= 0 - абсолютно все пойдут по ветке текстового облака cmsUserId() > 0 авторизированные пойдут по ветке текстового облака, а неавторизированные по ветке флеш-облака cmsUserId() == 1 - администратор пойдет по ветке текстового облака, а все остальные по ветке флеш-облака cmsUserId() <> 1 - все кроме администратора пойдут по ветке текстового облака, а администратор по ветке флеш-облака Возможно, Вы захотите чтобы флеш отображался только Администратору и пользователю с id=54, тогда конструкцию: if ( cmsUserId() == 0 ){ заменяете на констукцию: if ( ( cmsUserId() <> 1 ) and ( cmsUserId() <> 54 ) ){ Описание этого также читаем в строках 86 - 94 файла /modules/mod_tags/modules.php 6. Настраиваем в админке условия вывода тегов. - указываем минимальную длину выводимых тегов - указываем минимальную частоту тегов встречаемых в материалах - указываем из каких разделов будут участвовать теги в Облаке тегов - выбираем сортировку 7. Меняем цвет фона флеш-облака: в файле www.ваш_сайт/modules/mod_tags/module.php ищем строку 93: var widget_so = new SWFObject("/modules/mod_tags/tagcloud.swf?r="+rnumber, "tagcloudflash", "200", "200", "3", "#ffffff"); где, "#ffffff"- меняем на свой цвет фона, (ffffff - это белый цвет) "200", "200" - устанавливаем нужный размер flash Вот и всё: крутится, вертится :) P.S. в данной версии Облака тегов я добавил также вывод частоты тега. Для желающих включить эту возможность есть параметры: Код PHP: Это цитата из файла /modules/mod_tags/modules.php, строки 15 - 19.# выводить частоту тега в текстовом варианте облака (0-не выводить, 1-выводить; сейчас стоит "НЕ ВЫВОДИТЬ") [b]$view_num_txt=0;[/b] # выводить частоту тега во флеш варианте облака (0-не выводить, 1-выводить; сейчас стоит "ВЫВОДИТЬ") [b]$view_num_swf=1;[/b] Думаю, тут все понятно. Отмечу еще один пункт. В строке 135 вышеуказанного файла стоит: Код PHP: тем самым я задал вывод частоты тегов только для администратора сайта. [b]if (( cmsUserId() == 1 ) and ( $view_num_swf == 1 )) {[/b] В сумме со строкой 85 (if ( cmsUserId() == 0 ){) работа модуля будет происходить так: Флеш показывается всем пользователям прошедшим авторизацию, частота тегов показывается только администратору (id=1), всем остальным, в том числе роботам, показывается текстовая версия "Облака тегов" без указания частоты, всего в облаке будет не более 50 тегов (строка 13) наиболее встречающихся тегов. P.P.S. Работу модуля можно посмотреть и с выводом частоты. Для этого нужно будет авторизоваться на сайте "tester/starter" Загрузка комментариев... | ||