[Решено] Навигация на основе категорий

Главные вкладки

Аватар пользователя Bahiya Bahiya 6 февраля 2009 в 3:04

Задумал перевести уже существующий сайт с DLE на Drupal. C самого начала начались проблемы. Долго разбирался как работает навигация в Drupal, в частности на основе таксономии, но только окончательно запутался.

На первый взгляд довольно простая задача - добавить пару десятков категорий - превратилась в трудноразрешимую проблему. Пробовал добавить категории с помощью модуля taxonomy, а затем с помощью category. С помощью и первого и второго модулей создать категории удалось, но у публикуемых статей не получается получить url вида site.tld/category1/material1.html, вместо этого получаю путь site.tld/material1.html, как с этим бороться я даже не представляю.

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

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

Извиняюсь если путанно написал, надеюсь на вашу помощь.
Объясните пожалуйста доступным языком или накидайте ссылок.
Всем заранее большое спасибо!

Комментарии

Аватар пользователя Stan.Ezersky Stan.Ezersky 6 февраля 2009 в 3:15

Работающий пример вам

Словарь: Статьи
Термины:

  • Интервью
  • Обзоры
  • Рецензии

При создании словаря выбираем тип материала, например Story. Указываем в настройках "обязательно" (ставим галки).

Делаем словарь Метки (Теги). Указываем тип материала Story. Указываем в настройках "Тэги", "Множественный выбор" (ставим галки). Мы получили словарь с тегами (все забитые впоследствии теги будут терминами). Осталось включить модуль tagadelic. Блок тоже соответственно.

Переходим в добавить материал, видим выбор категории для постинга и поле для ввода меток.

Что тут сложного?

Аватар пользователя Bahiya Bahiya 6 февраля 2009 в 4:06

Блоки Tagadelic не отображают список терминов. "Tags for the current post" выводит двухуровневое меню на странице с метками.
Вот пример: test.topmoneyinvesting.com

Аватар пользователя Bahiya Bahiya 6 февраля 2009 в 4:20

С помощью какого модуля можно вывести термины определенного словаря в виде простого списка, без ссылки на сам словарь?

Как соблюсти структуру url вида site.ru/category1/material1.html?

Заранее спасибо!

Аватар пользователя Stan.Ezersky Stan.Ezersky 6 февраля 2009 в 4:34

"Bahiya" wrote:
Блоки Tagadelic не отображают список терминов.

Ошибаетесь. Именно так и реализовывается "облако тегов". Просто выберите в списке блоков "Tags in Метки" или как вы назвали словарь с тегами

"Bahiya" wrote:
Как соблюсти структуру url вида site.ru/category1/material1.html?

Модули pathauto, token, bonus_token. Пригодится taxonomy_menu

"Bahiya" wrote:
С помощью какого модуля можно вывести термины определенного словаря в виде простого списка, без ссылки на сам словарь?

Пример покажите как нужно

Аватар пользователя Geldora Geldora 6 февраля 2009 в 9:42

Не, то что вам нужно - "Как соблюсти структуру url вида site.ru/category1/material1.html?"

Это PathAuto - он создает алиасы, по умолачнию в друпале этого нет (автоматом, всмысле).

А категории - это таксономия!

Вообще - скажите, что вам нужно?

Если список терминов как на главной topmoneyinvesting.com - то это делается сниппетом. Ищите тут по сайту сборник сниппетов или на сетегном.коме.

Порэкспериментируйте с таксономией, доставьте доп.модулей и тп.

Аватар пользователя Bahiya Bahiya 8 февраля 2009 в 22:33

В общем, поэкспериментировав с таксономией, поставив/удалив доп.модули и т.п., реализовал меню на основе терминов определенного словаря с помощью сниппета. Вообще, сниппеты, оказывается, очень удобная вещь. Всем начинающим рекомендую к изучению.

Реализация ЧПУ тоже оказывается не совсем сложная вещь. Всё заработало после установки модулей pathauto и token и соответствующей настройки.

Результаты работы можно увидеть здесь (блок категории). Надеюсь днс уже обновился.

Всем ответившим большое спасибо!