Меню и ноды, вечный вопрос

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

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 13:04

Друзья,
столкнулся с такой проблемой.
Есть древовидное меню, есть отдельный контент тайп.
Как не прибегая к помощи сторонних модулей, написания своих и танцев с бубном линковать ноды к меню.
Таким образом что бы эти ноды не были разделами меню, а что бы при клике на любое меню выводился список
нод, которые прилинованны к выбранной категории.

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

!!! Пожалуйста, не предлагайте мне решений которым не достаточно дефолтных возможностей друпала. Мне надо именно нативное решение.
Спасибо

Комментарии

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 13:14

penexe wrote:
таксономия

ок. таксономия, а что дальше ?
создаем разделы в словаре и создаем меню с аналогичной структурой ?
цепляем словарь к нашему контент тайп, так ?
ну а дальше то что ?
или может я не вижу какое-то очевидное решение ?

Аватар пользователя sadmin sadmin 12 мая 2010 в 13:46

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

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 13:55

sadmin wrote:
Вам дали исчерпывающий ответ на вопрос, теперь привязывайте урлы терминов таксономии к вашим пунктам меню

а как же DRY ?!
я понимаю что я могу это сделать, но одна мысль о том что мне надо дублировать сущности в такой банальной задаче вводит меня в ступор.
Это не правильно и криво. Неужели нет элементарного решения ?

Аватар пользователя graker graker 12 мая 2010 в 14:52

<a href="mailto:raa@drupal.org">raa@drupal.org</a> wrote:
я понимаю что я могу это сделать, но одна мысль о том что мне надо дублировать сущности в такой банальной задаче вводит меня в ступор.

Это не дублирование сущностей. Термин таксономии и пункт меню - разные сущности, сделанные для разного.
Это и есть элементарное решение.

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 17:05

graker wrote:
<a href="mailto:raa@drupal.org">raa@drupal.org</a> wrote:
я понимаю что я могу это сделать, но одна мысль о том что мне надо дублировать сущности в такой банальной задаче вводит меня в ступор.

Это не дублирование сущностей. Термин таксономии и пункт меню - разные сущности, сделанные для разного.
Это и есть элементарное решение.

Да, решение простое. Но это дублирование.
Для того что бы мне создать каталог со статьями мне надо создать дерево категорий в таксономи, а затем создать аналогичное дерево в меню и ссылки для каждой ветки прописать
такие как создались таксономи!!!!
Я понимаю что народ привык это делать так как позволяет делать друпал. Но это не совсем логично.
А ведь без меню я не построю дерево категорий

Аватар пользователя graker graker 12 мая 2010 в 17:14

<a href="mailto:raa@drupal.org">raa@drupal.org</a> wrote:
Да, решение простое. Но это дублирование.
Для того что бы мне создать каталог со статьями мне надо создать дерево категорий в таксономи, а затем создать аналогичное дерево в меню и ссылки для каждой ветки прописать
такие как создались таксономи!!!!
Я понимаю что народ привык это делать так как позволяет делать друпал. Но это не совсем логично.
А ведь без меню я не построю дерево категорий

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

Что до "не логично", по логике Друпала пункты меню - это отдельные сущности, которые так или иначе нужно создавать. Это лично вам хочется, чтобы дерево меню совпадало с деревом таксономии, а мне вот хочется, чтобы первый пункт был taxonomy/term/1+2+3, а второй - taxonomy/term/5/all, и т.д. Поэтому сущности и отдельные, поэтому их необходимо создавать. На средства автоматизации создания вам указали, хотите обойтись стандартным комплектом модулей - создавайте руками.

Аватар пользователя tonnal tonnal 12 мая 2010 в 13:49

1. Ставите taxonomy_menu
2. В настройках словаря (который у нас для меню) указываете к каким типам нод можно крепить термины
3. В нодах указываете термин/термины
4. Настраиваете сам taxonomy_menu (где и как выводить)

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 13:53

tonnal wrote:
1. Ставите taxonomy_menu
2. В настройках словаря (который у нас для меню) указываете к каким типам нод можно крепить термины
3. В нодах указываете термин/термины
4. Настраиваете сам taxonomy_menu (где и как выводить)

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

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 17:09

xxandeadxx wrote:

дальше по ссылкам вида taxonomy/term/id_категории будет выводится то что вам нужно ( http://firsthand.ru/node/11 )

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

Аватар пользователя sadmin sadmin 12 мая 2010 в 14:46

"<a href="mailto:raa@drupal.org">raa@drupal.org</a>" wrote:
Это не правильно и криво. Неужели нет элементарного решения ?

Что тут не правильного? Это прямое предназначение таксономии. О дублировании сущностей не понял. Вы один раз прописываете термин, потом же просто указываете при добавлении отношение материала к определенному термину.

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 17:07

sadmin wrote:

Что тут не правильного? Это прямое предназначение таксономии. О дублировании сущностей не понял. Вы один раз прописываете термин, потом же просто указываете при добавлении отношение материала к определенному термину.

таксономи не построит мне дерево категорий в виде меню. мне не нужна теговая структура.
мне надо классическое древовидное меню и статьи для каждого пункта.

Аватар пользователя krock krock 12 мая 2010 в 17:33

Знаете, ТС, я тоже когда-то возмущался на этот счёт. Но потом, когда понял, что даже самый начинающий админ не против привязывать пункты меню к терминам, я успокоился.

Кстати, если вы напишете модуль, который будет прямо к пунктам привязывать ноды, это будет интересно. Наверняка можно как-то исхитриться. С помощью той же таксономии....

Аватар пользователя raa@drupal.org raa@drupal.org 12 мая 2010 в 17:55

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

Аватар пользователя orbisnull orbisnull 12 мая 2010 в 18:09

В 5-м из SiteMap можно было сделать блок, который работал как меню (для пользователя меню - набор ссылок, если вам не нужна именно сущность меню), не знаю, есть-ли в 6-й версии - надо смотреть (или допилить в блок)...

Аватар пользователя krock krock 12 мая 2010 в 18:47

"<a href="mailto:raa@drupal.org">raa@drupal.org</a>" wrote:
но мне кажется не разумно ставить такую махину, да еще прикручивать модули что бы сделать банальную задачу, которая для такого продукта должна быть доступна из коробки.

Вы чего, дружище? А кеширование? А надёжность? А постоянно расширяющиеся возможности? Это тоже очень важно.

Я где-то читал, что в одной из последних версий Вордпресса ПОЛНОСТЬЮ УБРАНО КЕШИРОВАНИЕ. Это ж с ума сойти можно...а вы говорите "меню"...

Аватар пользователя raa@drupal.org raa@drupal.org 13 мая 2010 в 13:28

krock wrote:

Вы чего, дружище? А кеширование? А надёжность? А постоянно расширяющиеся возможности? Это тоже очень важно.

Я где-то читал, что в одной из последних версий Вордпресса ПОЛНОСТЬЮ УБРАНО КЕШИРОВАНИЕ. Это ж с ума сойти можно...а вы говорите "меню"...

Да фиг с этим кэшированием.
Это просто поиски фишичек по которым CMS N превосходит CMS M.
Понимаю что можно выкрутится, не нравится правда способ )