Непростые категории

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

Аватар пользователя stas3k stas3k 15 сентября 2014 в 15:25

Просьба подсказать как реализовать следующее. На сайте планируется организовать добавление материала пользователями, на странице добавления они помимо основного материала будут выбирать категории, которых нужно выбрать 2. Первая категория это "город", вотрая категория "тип организации". Я понимаю что можно сделать вложенность до второго уровня типа:

Москва
--Гостиница
--Больница
Санкт-Петербург
--Гостиница
--Больница

Но данное решение не удобно, потому что пользователь должен выбирать на главной странице категорию "город", а потом при добавлении материала тоже выбирать "город" плюс к этому должен выбирать категорию "тип организации" из Гостиница, Больница и тд.

Структура сайта должна остаться такой:

Москва
--Гостиница
--Больница
Санкт-Петербург
--Гостиница
--Больница

То есть если мы перешли в категорию Москва, то и должны увидеть подкатегории Гостиница и Больница, принадлежащие только категории Москва.

Можно ли как сие организовать?

Комментарии

Аватар пользователя stas3k stas3k 15 сентября 2014 в 17:30

"Paldru" wrote:
Тип материала с 2мя словарями таксономии(города и типы) + аргументы views.

Спасибо! А подскажите как теперь сделать чтобы страница открывалась с таким URL http://***.ru/Moskva/Gostinnica/[название_гостинницы].html ? Мне просто нужно теперь все это выводить на главной, то есть на главной только города, а при переходе в города открывались чтобы уже подкатегории (2-й словарь с зависимостью от первого словаря).

Аватар пользователя Paldru Paldru 15 сентября 2014 в 17:50

"stas3k" wrote:
Спасибо! А подскажите как теперь сделать чтобы страница открывалась с таким URL http://***.ru/Moskva/Gostinnica/[название_гостинницы].html ?

Это в настройках pathauto, подставить нужные токены для генерации нужных ссылок. При этом для каждого термина таксономии должен быть прописан алиас (москва - moskva и т.д)
Должно получится чтото типа [node:field-city:url:path]/[node:field-type:url:path]/[node:title].html

"stas3k" wrote:
Мне просто нужно теперь все это выводить на главной, то есть на главной только города, а при переходе в города открывались чтобы уже подкатегории (2-й словарь с зависимостью от первого словаря).

Если городов всего 2 то можно вручную ссылки вбить в шаблон.

Далее все через вьюху, аргументы и темизацию.
http://***.ru/Moskva/
http://***.ru/Moskva/Gostinnica/

Аватар пользователя stas3k stas3k 15 сентября 2014 в 17:52

"Paldru" wrote:
Если городов всего 2 то можно вручную ссылки вбить в шаблон.
Далее все через вьюху, аргументы и темизацию.

Городов пока не много, но на будущее хотелось бы это программно реализовать, то есть вывод городов. Можно?

Аватар пользователя stas3k stas3k 15 сентября 2014 в 18:59

"Paldru" wrote:
Это в настройках pathauto, подставить нужные токены для генерации нужных ссылок. При этом для каждого термина таксономии должен быть прописан алиас (москва - moskva и т.д)
Должно получится чтото типа [node:field-city:url:path]/[node:field-type:url:path]/[node:title].html

Получилось! Снова благодарю. Но только есть один момент, при заходе на страницу http://***.ru/Moskva/Gostinica/ не отображаются гостиницы принадлежащие городу Москва, вместо этого ошибка "Страница "/Moskva/Gostinica" не найдена". Подскажите пожалуйста как поправить?

Аватар пользователя Paldru Paldru 15 сентября 2014 в 19:21

"stas3k" wrote:
при заходе на страницу http://***.ru/Moskva/Gostinica/ не отображаются гостиницы принадлежащие городу Москва, вместо этого ошибка "Страница "/Moskva/Gostinica" не найдена". Подскажите пожалуйста как поправить?

Это нужно создавать views page и настраивать аргументы или как их сейчас называют "Контекстные фильтры".

Аватар пользователя stas3k stas3k 15 сентября 2014 в 20:45

"Paldru" wrote:
Это нужно создавать views page и настраивать аргументы или как их сейчас называют "Контекстные фильтры".

Я так понимаю, что надо будет вручную добавлять каждый фильтр для url вида /Gorod/Type/ ? А можно это как автоматизировать?

Аватар пользователя stas3k stas3k 16 сентября 2014 в 8:00

Разобрался. Все можно сделать в Drupal. Даже удивляет его гибкость после перехода с DLE и WordPress. Огорчает только тот факт, что придется отказаться от модуля транслитерации URL так как контекстные фильтры если поставить опцию "Название термина, преобразованое в ID термина", то при запуске страницы /moskva/gostinica/ ничего не отображается. Как только выключаю модуль транслитерации и обновляю ссылки в Pathauto всё работает с адресами вида /Москва/Гостиница/

Аватар пользователя Paldru Paldru 16 сентября 2014 в 12:01

"stas3k" wrote:
Я так понимаю, что надо будет вручную добавлять каждый фильтр для url вида /Gorod/Type/ ? А можно это как автоматизировать?

для Gorod/Type/ фильтра будет два

"stas3k" wrote:
Огорчает только тот факт, что придется отказаться от модуля транслитерации URL так как контекстные фильтры если поставить опцию "Название термина, преобразованое в ID термина", то при запуске страницы /moskva/gostinica/ ничего не отображается. Как только выключаю модуль транслитерации и обновляю ссылки в Pathauto всё работает с адресами вида /Москва/Гостиница/

Ничего не огорчает, боритесь дальше Smile
http://www.drupal.ru/node/94523