Powered by CodeIgniter

На заметку

(35)
12
12 голосов
В этом сообществе можно намечать себе цели для дальнейшей их реализации.
Заметил, то облако тегов работает не удачно.
Теги в панели располагаются по алфавиту. Это приведет к тому, что многих тегов с большим количеством записей будет просто не видно.
Пример: http://azovoinfo.ru/tags/
Так же стоит сделать вывод URL английскими буквами
Вместо http://azovoinfo.ru/tags/Азово/ стоит выводить http://azovoinfo.ru/tags/azovo/
И еще. Где можно поменять размер и цвет шрифтов в облаке тегов?
21:43 ← 01 ноября 2009 Отправить в Твиттер ginterginter  RSS comments 9

Комментарии (9) ↓

admin admin time 09:21 ← 03 ноября 2009 #
Вы не совсем правы. Теги хоть и располагаются по алфавиту, но чем чаще тег используется, тем больше относительно других будет его размер.
Раньше теги писались английскими буквами в URI, но для ПС лучше все-таки писать русскими. Если хотите иначе — сделать это просто.
Размер просчитывается прямо в коде виджета, следует просто изменить коэффициент для его изменения.
Цвета прописаны в CSS-файле виджета.
Автор
ginter ginter time 11:06 ← 03 ноября 2009 #
Теги хоть и располагаются по алфавиту, но чем чаще тег используется,
тем больше относительно других будет его размер.

Именно про это я и говорю. В облаке тегов, в приведенном мною примере, Выводятся теги от начала и до тега «немцы». И получается, что в облако выводится много малозначимых тегов (у которых 1-2 страницы) и в него не попадают значимые теги, такие как «праздник», «событие», «спорт», «юбилей», «школа».

А по сути надо взять все теги, отсортировать их по количеству использования, из этого массива взять необходимое количество тегов для облака и снова отсортировать их по алфавиту. В принципе для того что бы дополнительной нагрузки не было стоит делать это не постоянно а к примеру раз в день.

Это сложно реализовать?

admin admin time 11:12 ← 03 ноября 2009 #
Просто. Надо просто изменить порядок сортировки тегов при запросе к БД.
Было:
$tags = $CI->db->select('COUNT(nodes_tags.nid) as count, tags.name')->join('tags','tags.id = nodes_tags.tid','inner')->limit(empty($config->max) ? 50 : $config->max)->group_by('tid')->order_by('tags.name','asc')->get('nodes_tags')->result(); Станет:
$tags = $CI->db->select('COUNT(nodes_tags.nid) as count, tags.name')->join('tags','tags.id = nodes_tags.tid','inner')->limit(empty($config->max) ? 50 : $config->max)->group_by('tid')->order_by('count','desc')->get('nodes_tags')->result(); После чего уже массив можно по алфавиту отсортировать.
Автор
ginter ginter time 11:20 ← 03 ноября 2009 #

Запрос будет кешироваться?

это решение надо в общий дистрибутив вставить

admin admin time 11:27 ← 03 ноября 2009 #
Конечно. Блок кешируется целиком до того времени, пока не будет добавлен новый тег.
Автор
ginter ginter time 15:45 ← 18 ноября 2009 #
Дмитрий, сейчас скачал из SVN последний дистрибутив и установил. В нем старая версия облака тегов, не такая как сделано на этом сайте. Исправление будет?
Автор
ginter ginter time 11:46 ← 03 ноября 2009 #
Спасибо
admin admin time 14:03 ← 03 ноября 2009 #
Пожалуйста.
dqpb dqpb time 16:36 ← 25 января 2010 #
Есть предложение, при переходе через облако тегов, на странице где встречается данный тег подсвечивать его.