Вход для клиентов и партнеров
в начало сайта
Партнерская программаОнлайн демоСкачатьКарта сайта
 

Регламент
Документация
Часто задаваемые вопросы (FAQ)
Решения типовых вопросов
Форум поддержки
Библиотека разработчика

Посмотрите демо-ролики и убедитесь в том, что "Twilight CMS" очень удобна в управлении, понятна и проста.

Бесплатно скачайте "Twilight.Basic", установите на своем компьютере и изучите систему более детально.

Если вам нужно установить "Twilight CMS" на существующий сайт или разработать новый - обращайтесь в отдел интеграции.

 

Ваше имя
Ваш Email
Вопрос
Twilight.basic
  • Узнайте больше
  • Сравните версии
  • Twilight.selection
  • Узнайте больше
  • Сравните версии
  • Twilight.evolution
  • Узнайте больше
  • Сравните версии
  •  
    Главная // Библиотека разработчика // Справочники // Макроподстановки //

    TagCloud


    Назначение

    Рисует "облако тэгов" используя данные из справочника.

    Ключи

    source Имя таблицы с исходными данными. Обязательный параметр.
    title Имя столбца в котором хранятся строки, который будут отрисованы в тэгах в облаке.
    weight Имя столбца, в котором хранится числовой параметр, используемый как вес записи, учитываемый при расчете весов всех тэгов в облаке. Если не задано, вес принимается равным 1.
    id Имя столбца, где находится идентификатор записи, который будет использован при формировании URL для тэгов.
    link Формат ссылки для тэга, внутри которой можно использовать специальную подстановку вида <ID> для вставки значения из столбца, определенного в ключе id. Например, значение ключа может быть таким: /catalog/?iid=<ID>
    count Максимальное число тэгов в облаке, если не задано то выводятся все.
    clusters Количество разных по размеру групп (кластеров), на которые разбиваются тэги в облаке для отрисовки разными стилями. По умолчанию их 6.
    sort Режим сортировки, может быть random (случайный порядок тэгов) или abc (алфавитный, по умолчанию).
    params HTML параметры, которые будут прописаны в каждой ссылке вокруг тэга.
    algorithm Алгоритм кластеризации, может иметь значение linear (линейный, по умолчанию) или logarithmic (логарифмический).
    filter Фильтр для ограничения выборки из таблицы с данными.
    nowrap Переключатель, в положении on запрещающий переносить строки внутри тэгов. По умолчанию выключен.
    condition Составное условие выполнения макроса.

    Комментарии

    Данный макрос берет данные из справочника, если задан filter - отбирает только нужные записи, затем группирует строки по столбцу заданному в ключе title. Значение, которое находится в столбце title будет помещено в текст ссылки в облаке тэгов, то есть это и будет сам тэг.

    Далее, суммируя у "одинаковых" строк то, что находится в столбце, заданном ключом weight мы получаем вес каждого тэга, разделив его на сумму весов макрос определяет относительный вес тэга. Если weght не задан, то система в качестве веса будет использовать количество строк в выборке с одинаковым title.

    Относительные веса размещаются на отрезке от 0 до 1 в интервалы, количество которых задано ключом clusters. В зависимости от значения ключа algorithm, размеры этих интервалов могут быть либо равными (режим linear), либо логарифмически меняющимися (режим logarithmic). Это позволяет нам при необходимости избежать ситуаций, когда один тэг написан огромными буквами, а все остальные, с сильно отличающиеся весами - маленькими. Выбор алгоритма за разработчиком, который сам должен оценить закон распределения значений (см. институтский курс тервера) и выбрать нужный режим работы. Конечно, также режим можно подобрать опытным путем на конкретных данных.

    Разделив все значения на несколько групп, макрос отрисовывает ссылки вида:

    <A HREF="текст ссылки" class="tc_[1..N]" params>текст тэга</A>

    Классы tc_1, tc_2 и т.д. должны быть определены разработчиком в файле common.css, где он определяет каким размером, цветом и шрифтом будут отрисованы ссылки. params - это те параметры, которые можно добавить через ключ макроса params.

    Текст ссылки формируется из ключа link, где строка "<ID>" будет заменена на значение из столбца, заданного ключом id. Поскольку большинство облаков используются для отрисовки некоторых "заголовков" из справочников, обычно ссылка ведет на страницу, которая содержит детальный текст новости, описание товара и так далее. Для этого ссылка формируется как /news/?nid=<ID>, /catalog/?sid=<ID> и так далее. Также можно использовать и любые другие ссылки, как вообще не содержащие <ID>, так и использующие эту подстроку иным образом.

    Полученный в результате набор ссылок обрамляется в тэг DIV:

    <DIV id="tag_cloud_X" class="tag_cloud">тэг тэг ... тэг</DIV>

    X - это номер облака тэгов на странице (в общем случае их может быть несколько). Класс tag_cloud может быть использован для оформления облака.

    Примеры

    Пример с сайта http://www.weddingrush.ru

    $TagCloud[source: news; title: city; id: city; link: "/news/?city=<ID>"; clusters: 10; count: 100; algorithm: logarithmic; nowrap: on]$

    « к списку макроподстановок

    версия для печати

     
    © 2003-17 Страта Технологии (создание сайтов, разработка cms), Twilight CMS in english.
    Наш адрес: Москва, пр. Маршала Жукова д.51
    Тел.: (495) 222-6436, E-mail: , карта сайта, условия использования информации о CMS
    Звоните через Skype:  

    Реклама: