Всем привет! Имею родительские термины и подтермины:
Ситроен
- подвеска
- ходовая
- кузов
Форд
- подвеска
- ходовая
- кузов
Опель
- подвеска
- ходовая
- кузов
И имею два вопроса:
1. Возможно ли создать подтермины "подвеска, ходовая, кузов" всего лишь 1 раз, и как-то их привязать к каждому новому родительскому термину текущего словаря? Т.к. число подтерминов больше раза в 2-3 и каждый раз создавая новую марку (и модель) автомобиля уж очень утомительно это делать. Да и в целом администрирование бы сайта упростилось бы.
2. Если решить первый вопрос совсем никак, то, возможно ли "копировать" все подтермины из одно родителя и "вставить" в новый родитель?
Может кто сталкивался с подобным? Подскажите куда копать?
Комментарии
А сделать два словаря? Один с марками машин, а второй с частями?
Думал на эту тему, но тогда стоит вопрос как их потом привязать?
На главной странице с помощью Views планирую вывести каталог в две колонки
Ситроен
- подвеска
- ходовая
- кузов
Форд
- подвеска
- ходовая
- кузов
Если ЮЗЕР нажмет по "Подвеска" из раздела СИТРОЕН, то ему ведь будет показаны все запчасти по подвеске для всех авто? А нужно только для Ситроен. Или может какой-то модуль дополнительно нужно поставить? Или это можно с помощью Views все настроить?
Можно по нескольким терминам фильтровать.
+1
ОК! А а это можно делать за счет Views (с аргументами поработать) или чего-то другого?
Можно Views, плюс есть такое как taxonomy/term/2 3 1 42, по несколько терминов за раз.
Через вьюс не можно, а нужно. А вы прям вот так и хотите вывести?
Думаю, надо делать выборку по определенным терминам (аргументы) и группировать по полю "all term", который ограничен определенным словарем. Или то, что Darteg посоветовал.
Чуть раньше (часов на 6) задался тем же вопросом, коль скоро там никто не ответил, перейду сюда
Решением Вашего первого вопроса может стать модуль Hierarchical Select, там можно нескольких родителей установить в настройках термина.
А вот как сделать фильтрацию во views – непонятно как заставить учитывать родительский термин при выборе дочернего в фильтре.
Проще не смешивать различные сущности в одном словаре, а разбить их на отдельные, например Марки Авто,Тип Запчасти
И все..-))
Делаем вьюс с фильтрами по словарям(проще с exposed)... выбираем из списка Марку, выводятся запчасти только выбранной Марки, Выбираем еще и Тип запчасти... получаем список запчастей выбранного типа для выбранной Марки автомобиля..
Спасибо за Ваш ответ. Однако в моем случае от первого термина зависит набор дочерних терминов.
Немного поторопился, когда написал, что вопрос был такой-же, скорее он очень похож, но со своей спецификой.
Возможно, Вы подскажите, как организовать подобную зависимость для варианта с двумя словарями?
т.е. если я правильно помню, вам необходимо для каждого термина Словаря1 соответствовали не все термины Словаря2, а некое ограниченное их множество?
если только так извернуться:
http://drupal.org/project/term_fields
этот модуль позволяет добавлять cck поля к терминам такономии
http://drupal.org/project/content_taxonomy
этот модуль позволяет добавлять CCK поля - термины таксономии
т.е. к терминам Словаря1 добавляем поле-ссылку на термины Словаря2 (количество добавляемых полей - неограничено)
Добавляем к терминам Словаря1 нужные термины из Словаря2..
Получается, что у каждого термина Словаря1 будет несколько полей-ссылок на термины из Словаря2
В описании к модулю term_fields написано, что он довольно неплохо интегрирован с вьюс..
Значит проблем с организацией вывода материалов быть не должно..
Вариант не проверенный, теория, так сказать...
Пробуйте... может оно...
ЗЫ.. в семерке, кстати это сдалать проще... данный функционал там в ядре...
Зачем плодить сущности? Сделайте два словаря и выбирайте из второго только то, что нужно. В вьюс для первого словаря выводите только те термины второго словаря, у которого есть ноды с соответствующим термином первого словаря. /не знаю, понятно ли я написала.../
Благодарю за хорошее предложение.
Остается вопрос, как реализовать:
В седьмой версии, в поле «ссылка на термин из словаря 2» нашел возможность только установить значение по умолчанию из словаря 2. При этом в форме создания материала вообще нет возможности задать значения дополнительного поля термина словаря 1.
Есть ли возможность реализовать штатными средствами views зависимость значений вариантов выбора для второго фильтра от выбора в первым. Если не ошибаюсь, это можно сделать, только написав свой фильтр.
P.s. Как говорил кот Матроскин : Интересуюсь в целях повышения образованности
Ребята, подскажите пожалуйста, как???
Тут относительно первого варианта моего поста появились новые элементы в словаре про "Марки автомобилей", а именно: Термин-родитель и подтермины.
По вашему совету создал 2 словаря, "Марка\модель автомобиля" и "Запчасти". Сами словари выглядят так:
Словарь №1:
Марка\модель автомобия:
- Опель
-- Вектра А
-- Кадет
- Форд
-- Фокус 2
-- Фиеста
Словарь №2:
Запчасти:
- Оптика
- Ходовая
- Кузов
К большому сожалению не являюсь спецом в Views (многое делал на нем, менее сложного, каталог не приходилось).
Как вывести сначала Родительские термины Словаря "Марка\модель автомобиля" (т.е. просто марку авто, без моделей), а под ними вывести термины из словаря "Запчасти", т.е. примерно так на выходе:
Опель
Ходовая, Оптика, Кузов
Форд
Ходовая, Оптика, Кузов
При этом кликнув по Ходовая (под родителем Опель) я попаду на все запчасти ходовой именно по Опелям...
Я уже и аргументы втыкал и зависимости, фильтры... в итоге вообще каша получилось и никаких пока выходов не вижу\не знаю. Пожалуйста, ребятки, подскажите, кто реализовывал подобное?...
Читал статью http://druit.ru/blogs/views/18, все удачно реализовал, но она по-моему рассчитана на 1 словарь с родителями и подтерминами. Крутил вертел - не получилось, видимо приведенный там код нужно править. Все что получилось могу показать на действующем сайте.
почему бы просто не сделать вывод списка запчастей, с возможностью фильтрации по авто и по типу..
Например как сдесь:
http://www.butik-postel.ru/catalog/komplekty-belya/15-spalnoe
делается просто.. добавляем экспозед фильтры по терминам таксономии(в настройках фильтра кнопка exposed(раскрыть) и все..
и посетителю удобно и интуитивно-понятно-))
тип поля не "ссылка на термин"(или как там оно..) а "ссылка на сущность" (entity reference)..
выбираем сущность, на которую ссылаться, нужный словарь таксономии...
чтобы "entity reference" появилось, надо модуль поставить Entity Reference (он требует также модуль Entity API)