Краткое руководство по подключению механизма тегов на MODx
Для тех, кто таксономически предпочитает обычной разбивке содержимого на категории - систему тегов, предлагаю небольшое, но исчерпывающее (на момент написания) руководство по ее подключению на новом или уже работающем сайте.
Для обеспечения программной части механизма тегов нам понадобятся следующие сниппеты:
- tagLinks - я даю ссылку на модифицированную версию, оригинальная версия tagLinks 1.0.3 по непонятным причинам отказалась работать. Также вы можете скопировать сниппет tagLinks используемый на нашем сайте, в нем добавлен вывод переметра title для ссылок.
- TvTagCloud 1.0
Шаг 1. Создаем доп. параметр (TV)
Для хранения тегов документа нам понадобится новый доп. параметр. Назовем его "tags" и зададим тип text (можно задать и checkbox, но тогда придется обойтись ограниченным набором тегов, которые следует указать в возможных значениях).
Перед сохранением нового доп. параметра мы не должны забыть включить его для соответствующего шаблона(ов).
Шаг 2. Вводим теги
Зададим в качестве эксперимента несколько тегов для какого-нибудь документа. При этом надо определить для себя, как будет удобнее эти теги разделять. Самое очевидное и интуитивное разделение списка слов - запятая с пробелом ", ", хотя вы можете выбрать что-нибудь экзотичнее.
Итак, список тегов может выглядеть так: "руководство, для начинающих, теги".
Шаг 3. Создаем страницу вывода статей по заданному тегу
Для того, чтобы после нажатия на тег (ссылку) мы попадали на страницу со всеми статьями по нему, нам нужно эту самую страницу создать. Страница должна быть самой обычной но со специальным некешируемым вызовом Ditto (здесь я рассматриваю версии от 2.0). Напимер:
Ditto будет получать тег через url и выводить соответствующие статьи на этой странице.
Шаг 4. Подключаем tagLinks
Теперь настроим вызов сниппета tagLinks в том месте на странице со статьей, в котором мы хотим видеть перечисление ключевых слов (со ссылками). Вызов может быть вот таким:
Расшифрую значения параметров:
- &tv - имя доп. параметра, содержащего теги
- &element - элемент-контейнер для вызова тегов (очень сомневаюсь в целесообразности этого параметра)
- &fap - включить/выключить поддержку дружественных url.
- &path - путь к странице, содержащей вывод всех статей с тегом (страница с вызовом Ditto из шага 3)
- &label - строка, выводящаяся перед перечислением тегов
- &title_prefix - префикс к значению параметра title для ссылок (работает только в версии сниппета с нашего сайта)
Теперь можно протестировать работу сниппета и вывода статей с тегом. Если все работает нормально, можно остановиться на этом или перейти к следующему шагу.
Шаг 5. Подключаем TvTagCloud
Теперь создадим так называемое "облако тегов", чтобы иметь возможнось выбирать тему статей, скажем с главной страницы. К сожалению, версия 2.0 сниппета TvTagCloud у меня не заработала, поэтому мы воспользуемся 1.0. Вызывать сниппет достаточно просто, например:
Снова объясню параметры:
- &parent - ИД документа в котором находятся статьи с тегами (к сожалению перечисление нескольких родительских документов не работает)
- &landing - ИД страницы с выводом статей по заданному тегу (как раз та страница с вызовом Ditto, что обсуждалась в шаге 3)
- &tvTags - имя доп. параметра, содержащего теги
- &showCount - включить/выключить отображение количества статей рядом с тегом
Шаг 6. CSS-оформление облака тегов
Здесь все просто: в зависимости от "популярности" тега ссылке задаются классы s1, s2, s3, s4... а все облако содержится в контейнере класса "tagcloud" - их мы и должны отразить в нашей css-таблице. Так же традиционно для ссылок в облаке тегов убирают подчеркивание.
Ну вот, пожалуй, и все. Удачных тегов!



Добавить комментарий