помогите разобраться с таксономией
вот такая структура которую хочу реализовать в таксономии при чём 3 и 4 уровень будет добавлять пользователь.
- 1 США
- 1.1 SF
- 1.1.1 название подразделения 1
- 1.1.1.1 (название команды 1)
- 1.1.1.2 (название команды 2)
- 1.1.2 название подразделения 2
- 1.1.2.1 (название команды 3)
- 1.1.2.2 (название команды 4)
- 1.2 INFANTY
- 1.2.1 название подразделения 3
- 1.2.1.1 (название команды 5)
- 1.2.1.2 (название команды 6)
- 1.2.2 название подразделения 4
- 1.2.2.1 (название команды 7)
- 1.2.2.2 (название команды 8)
если сделать словарь в 4 уровня то возникает вопрос, как в полях при создании типа материала (контент типа) сделать привязку к определённому узлу дерева. Например к "SF" и всё что ниже на 1 уровень только у которых родитель "SF". то есть в список должны попасть только "название подразделения 1" и "название подразделения 2"
при выборе "название подразделения 2" в список попадут "(название команды 3)" и "(название команды 4)"
теперь перейдём к созданию типа материала. у меня 3 списка и поле ввода. как их привязать к нужным УРОВНЯМ дерева определённого словаря и заставить выбирать нужного родителя указанного уровня после выбора в пред идущем. уже пользователем.
либо делать разные словари по странам, подразделениям (но тогда придётся както связать определённые подразделения
со странами) и так далее. Но совсем не хочется.
PS Сильно не ругайте. поиском пользовался, но не нашел реализации конкретно такой задачи.
"отныне есть нулевой уровень" (с)
при чём 3 и 4 уровень будет добавлять пользователь
Здесь вам придется использовать либо hierarchical select там есть возможность добавлять термины пользователями. Или писать придется этот модуль самому.
если сделать словарь в 4 уровня то возникает вопрос, как в полях при создании типа материала (контент типа) сделать привязку к определённому узлу дерева. Например к "SF" и всё что ниже на 1 уровень только у которых родитель "SF". то есть в список должны попасть только "название подразделения 1" и "название подразделения 2"
Это придется фильтровать самому через хук hook_form_alter. Добавьте через хук hook_nodeapi по событию insert к ноде поле в котором будет записаны термины таксономии нужные для привязки контент типа к уровню таксономии, тогда эти данные будут доступны в hook_form_alter. Установите модуль devel и смотрите массивы dsm($node), dsm($form), и ненужные поля убирайте unset($node->field_body). Так можно будет убрать не нужные для выбора термины таксономии.
мне нужно создать тип поля (список) в котором я выбираю термин таксономии (одно из родителей) и п список попадают только его дети на 1 уровень ниже
и ещё один вариант поля списка в котором я в качестве родителя результат выбора из другого поля (так сказать родителем будет ссылка на результат поля таксономии) получается словарь таксономии такойже как и первое только на уровень ниже по дереву
я так понимаю Для того чтобы добавить тип поля мне нужно сделать модуль который создаёт такой тип поля
ПОМОГИТЕ !!!!
Это придется фильтровать самому через хук hook_form_alter. Добавьте через хук hook_nodeapi по событию insert к ноде поле в котором будет записаны термины таксономии нужные для привязки контент типа к уровню таксономии, тогда эти данные будут доступны в hook_form_alter. Установите модуль devel и смотрите массивы dsm($node), dsm($form), и ненужные поля убирайте unset($node->field_body). Так можно будет убрать не нужные для выбора термины таксономии.
У меня есть контент тип в котором мне нужно всё это выбрать. (страна, род войк, подразделение, команда). я так понял что мне нужна делать просто списки с указанием на словарь таксономии. а потом хуками обрабатывать определённые списки по ID.
Куда эти хуки дописывать, и создаётся ли файл (созданного контент типа "команды") который можно ручками поправить и дописать в него то что нужно.
темезировать конкретный контент тип.