Таксономия в drupal 7

Аватар пользователя andypost@drupal.org andypost@drupal.org 9 октября 2009 в 19:34

Новости с полей разработки drupal 7... и снова о таксономии которая претерпела очередное серьезное изменение (issue). Теперь термины не только являются полями и могут быть расширены другими полями, но и крепятся как и остальные поля в управление контентом.
Таксономия в drupal7

Ложка дегтя состоит в том, что родительские термины и related в 7ке отсутствуют и теоретически планируются только в 8ке (коммент №204)

Интересно, кто-нибудь ими пользуется в настоящее время?

ВложениеРазмер
Иконка изображения taxonomy_D7.png53.37 КБ
0 Thanks

Комментарии

Аватар пользователя Ильич Рамирес Санчес Ильич Рамирес Санчес 10 октября 2009 в 2:47
"<a href="mailto:andypost@drupal.org">andypost@drupal.org</a>" wrote:

ожка дегтя состоит в том, что родительские термины и related в 7ке отсутствую

энди что ты тут имеешь в виду? древообразные таксономии? (у нас просто таковые в каталогах есть)

Аватар пользователя andypost@drupal.org andypost@drupal.org 10 ноября 2015 в 11:46

Редактирование родителей работает, но вот что с ними дальше делать - хз.

Иерархия с словаре
Иерархия

Собственно форма термина (можно сравнить с 6кой и понять о чем речь

А вот цитата:

Related terms are no longer in HEAD.

Parent items, sadly, we didn't have time to convert to a field in Drupal 7 (or remove the horrible form code which generates that select list). We should look at performance improvements in D7 though, and term hierarchy is going to be a major TODO for Drupal 8.

Аватар пользователя gorr gorr 10 октября 2009 в 10:32

Похоже, что подобные изменения коснутся и комментариев, то есть заголовок и тело комментария будут полями и можно будет их расширять своими полями. Пользователи также будут расширяемы полями, которые заменят функционал модуля профиль.

Аватар пользователя andypost@drupal.org andypost@drupal.org 11 октября 2009 в 7:39
"gorr" wrote:

Похоже, что подобные изменения коснутся и комментариев, то есть заголовок и тело комментария будут полями и можно будет их расширять своими полями. Пользователи также будут расширяемы полями, которые заменят функционал модуля профиль.

Эти задачи давно висят, вот только никто пока до них не добрался... так что непонятно будет ли он в 7ке...

Аватар пользователя bohart@drupal.org bohart@drupal.org 11 октября 2009 в 13:23

упс, случайно не за то проголосовал (((
пользовался и конечно же планировал пользоваться...

"catch drupal.org" wrote:

term hierarchy is going to be a major TODO for Drupal 8.

к чему этот мир котится :(

Аватар пользователя Freedom Freedom 11 октября 2009 в 13:26

Если как было сказано таксономия будет не "древообразной", тогда смысл переходить на семерку, учитывая все её дополнения и навороты! Может всё таки разработчики образумятся и включат такую поддержку. Единственное, если они почти с нуля переделали ядро, то возможно реализовать у них в данный момент не получается и они планируют внедрить её позже. Но ведь многие проекты уже работают на древообразных таксономиях и далеко не факт, что народ будет переделывать свою структуру таксономии ради перехода на семёрку. Может просто не выпускать 7ку, пока не будет реализована эта возможность???

Аватар пользователя Freedom Freedom 11 октября 2009 в 13:35

Ещё один вопрос, я его уже пытался поднять, http://drupal.ru/node/35072 - Ролевой доступ к материалу... Но ответа я пока не получил на свой вопрос. Предполагаются ли расширенные возможности настройки прав доступа к материалам? В частности с указанием при создании материала - каким ролям должен быть виден создаваемый материал.

Аватар пользователя Тыдж Тыдж 11 октября 2009 в 13:35

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

Аватар пользователя Dan Dan 11 октября 2009 в 14:37

Итого в таксономии нет:
- множественного наследования
- связанных терминов
- иерархии

Вывод: это уже не таксономия, это просто тэги. Надо переименовывать.

Аватар пользователя fasdalf@fasdalf.ru fasdalf@fasdalf.ru 11 октября 2009 в 15:21

Куда катится мир! Самую вкусную фичу из ядра выкинули! А как же справочники, привязка к городам, маркам и моделям автомобилей????

Аватар пользователя T-34 T-34 11 октября 2009 в 15:42

Вот это да. Т. е. не успели реализовать родителей и при этом ненужную форму для их выбора оставляют?

Аватар пользователя FORTIS FORTIS 11 октября 2009 в 15:54

ну может быть действительно сделают модуль, который со временем доведут до ума и включат в ядро 8ки

Аватар пользователя andypost@drupal.org andypost@drupal.org 11 октября 2009 в 17:58

Илья, в семерке стремятся облегчить ядро и как можно больше выкинуть в контриб. Функция может и есть, там пачка патчей висит для чистки этого старого наследия... В код нужно смотреть - ado уже не успевает за изменениями...

Аватар пользователя run run 11 октября 2009 в 20:32

Нехватает в таксономии возможности переносить термины из одного словоря в другой и превязывать термины ко многим словарям.

Зря конечно древообразную иерархию не развивают. Очень нужный функционал.

А для вывода терминов словарей пользуюсь модулем Vocabulary Index очень помогает в некоторых ситуациях.

Развивать древообразную иерархию в таксономии вместе с новыми возможностями которые заложили в 7-ке. Нет одного за счет другого!!!

Аватар пользователя Dan Dan 11 октября 2009 в 21:06
"V I R U S" wrote:

Я так понял что по сути CCK не нужен будет? о_О

Ну это как бэ и есть "CCK, generation next."

Аватар пользователя Ильич Рамирес Санчес Ильич Рамирес Санчес 11 октября 2009 в 22:22
"<a href="mailto:andypost@drupal.org">andypost@drupal.org</a>" wrote:

Илья, в семерке стремятся облегчить ядро и как можно больше выкинуть в контриб. Функция может и есть, там пачка патчей висит для чистки этого старого наследия...

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

Аватар пользователя cristobal-junta cristobal-junta 11 октября 2009 в 22:51

Так как стандартных механизмов работы с Related terms нет, то никогда эти связи не использовал, хотя один раз очень даже хотелось.

А вот отсутствие иерархической таксономии в «семерке» очень расстраивает, так как еще ни разу не было случая, чтобы я ей не воспользовался.

Аватар пользователя Irbis Irbis 12 октября 2009 в 9:48

Мммдя, Drupal становится всё более кастомный и всё дальше от простых пользователей.

Аватар пользователя Mr.Alinaki@drupal.org Mr.Alinaki@drup... 12 октября 2009 в 14:26
Irbis wrote:

Мммдя, Drupal становится всё более кастомный и всё дальше от простых пользователей.

Вы хотели сказать, всё дальше от разработчиков, наверное. Пользователям только того и надо - навешать модулей побольше, чтобы ничего руками не делать, а потом все возможные ускорители поврубать и может быть тогда всё заработает быстро :)

Аватар пользователя F10 F10 12 октября 2009 в 12:42

Может древообразность они повесят на доп. модули, например category.
По своему опыту, древообразность таксономии использовал в 2-х проектах из десяти.

Аватар пользователя podarok@drupal.org podarok@drupal.org 12 октября 2009 в 15:08

жаль конешно, что убрали...
Думаю соседним модулем можно будет решить вопрос, либо втянуть модуль от шестерки

Аватар пользователя direqtor direqtor 12 октября 2009 в 15:56

А я еще раз озвучу свою идею. Для кошерного CMF все эти таксономии и комменты не нужны. Нужен тип материалов, настраиваемый с нуля, а функционал таксономии или комментариев должен настраиваться через CCK nodereference. Это будет обобщением. И судя по всему разработчики туда и двигаются: внедрение CCK в ядро, отнесение таксономии к полям материала... что далее? осталось title и body снести в CCK. :)

Аватар пользователя navar navar 12 октября 2009 в 19:34
"direqtor" wrote:

Для кошерного CMF все эти таксономии и комменты не нужны. Нужен тип материалов, настраиваемый с нуля, а функционал таксономии или комментариев должен настраиваться через CCK nodereference. Это будет обобщением. И судя по всему разработчики туда и двигаются: внедрение CCK в ядро, отнесение таксономии к полям материала... что далее? осталось title и body снести в CCK. :)

Согласен!

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

Аватар пользователя Skirr Skirr 13 октября 2009 в 0:20

а форумы разве не на таксономии держались с их древовидной структурой?

Аватар пользователя Химический Али Химический Али 13 октября 2009 в 8:17
"Skirr" wrote:

а форумы разве не на таксономии держались с их древовидной структурой?

Истинно так. Ждем исключения форума из дистрибутива :)

Аватар пользователя Demimurych Demimurych 13 октября 2009 в 11:59
"Владимир Ситников" wrote:

Нда, если таксономию упростят до обычных ключевых слов как в wordpress или Битрикс, одно из основных преимуществ Drupal пропадет :(

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

Аватар пользователя xseed xseed 14 октября 2009 в 21:28

А таксономия вообще никогда не была доработана. Вернее ее основная функция (иерархия) была, но вот дополнительные возможности по отображению, расширению и управлению таксономией отсутствовали и отсутствуют до сих пор. Поясню, о чем речь:

1. Related terms (похожие термины) нигде не отображаются, хотя их можно выбирать. По идее они должны отображаться в ленте материалов, относящихся к этому термину, чтобы пользователь мог по нему щелкнуть и посмотреть по похожему термину - похожие материалы;
2. Synonyms (синонимы) даже в 7-ке опять вводятся по одному на строку. Кто-нить объяснит, почему они не выбираются из списка, как related terms? Опять же, синонимы нигде не отображаются, а могли бы сделать отображение в скобках рядом с основным термином. Вообще не реализована основная функция для поля synonyms. По-идее, синонимами должны быть те термины, которые имеют одинаковых потомков, а похожие термины имеют только часть одинаковых потомков. Т.е. если 2 термина стали синонимами, их потомки должны объединиться в одну кучу, а если 2 термина похожие, их потомкам должно быть разрешено находится или в одной, или в другой или в одной группах одновременно (Multiple select). Эта очередная недоработка, как мы видим плавно перетекает в 7.x-ю версию. И по-видимому коренных изменений не будет, т.к. эта халява идет с 4.7, если не раньше... ;
3. Для словаря типа Tags с самого начала разработки нельзя вводить родителей. И отображение иерархии отсутствует. Хотя можно было сделать специальный формат ввода например "parent term" -> "term";
4. И по прежнему нельзя перетакскивать термины из словаря в словарь.

Аватар пользователя andypost@drupal.org andypost@drupal.org 15 октября 2009 в 8:50

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

Судя по опросу больше 1/3 поучавствовавших не применяли сие, значит это не предмет первой необходимости в ядре.

Если говорить о новичках, то для них слово таксономия - уже вызывает легкий шок. Так что пусть оно в ядре будет Тегами/Метками/Списками. А вот когда человек дойдет до более сложных задач, он уже однозначно будет знаком с контрибом и сможет найти себе [полу]готовое решение.

Что касается иерархии и работы с ней - это, как правило, настолько специфичная задача от проекта к проекту, что унифицировать её не умеет смысла. Значительно правильнее держать 10 модулей в контрибе для решения более-менее типичных задач.

PS: Причем этих модулей уже хватает с избытком... по одним только relation наплодили... не говоря про синонимы и связанность...

Аватар пользователя Химический Али Химический Али 15 октября 2009 в 11:55

По-моему, вполне типичная задача - древовидная структура форумов и пользуются очень многие. Буду надеяться, что-то нарешают.

Аватар пользователя Virr Virr 19 октября 2009 в 13:36

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

Аватар пользователя andypost@drupal.org andypost@drupal.org 27 октября 2009 в 1:38
"Dan" wrote:

Итого в таксономии нет:
- множественного наследования
- связанных терминов
- иерархии

Дан, ты не совсем прав!
- множественное наследование возможно (добавь к термину новое множественное поле ссылку на родителей),
- связанные термины (http://drupal.org/update/modules/6/7 # related_terms http://drupal.org/node/526120) то же самое
- иерархия есть, просто как и прежде работать с ней придется из контриба!

Аватар пользователя otmoroz otmoroz 18 июня 2010 в 17:50

и сейчас иерархии нет, стоит посмотреть на урл и бредкрамбы - иерархия только на вид, кому она такая нужна? :( ну то есть нужна, но это не то.

Аватар пользователя Dan Dan 18 июня 2010 в 19:16

Какая может быть иерархия в меню, если вложенность для меню - 9 уровней, а для таксономии - неограниченно?
Как выводить крошки при множественном наследовании?

Аватар пользователя otmoroz otmoroz 21 июня 2010 в 16:00

по переходам пользователя. меню тралить. а зачем тебе все термины в меню выводить?

я тебе про прямую иерархию говорю: хттп://словарь/родитель/дите/внук и т.д.

Аватар пользователя Dan Dan 22 июня 2010 в 14:02
"otmoroz" wrote:

по переходам пользователя. меню тралить.

Пользователь далеко не всегда ходит в аккурат по лесенке таксономии - он может придти на страницу из вне. Если будет несколько веток таксономии, надо будет выбирать какую-либо "по-умолчанию". Формировать крошки тоже можно по разному - либо генерить на каждой странице отдельно, с учётом текушей навигации, либо, например, на основе кук юзера. Для каждого проекта - свои особенности.

"otmoroz" wrote:

а зачем тебе все термины в меню выводить?

А сколько терминов надо отображать? Один? Два? "Почему не шесть?", - спросит очередной пользователь, "или двенадцать?".

"otmoroz" wrote:

я тебе про прямую иерархию говорю: хттп://словарь/родитель/дите/внук и т.д

А я тебе говорю, что таксономия - это не только ценный мех. У ноды может быть несколько "прямых иерархий" из одного словаря, может быть множественная, есть ещё логические операции объединения терминов.
Написать универсальное решение очень сложно, лучше упростить саму основу, а выверты оставить на контриб - что тебе надо, то и устанавливай.

Аватар пользователя otmoroz otmoroz 22 июня 2010 в 15:57

зато если хотя бы урл терминам присваивались с учетом иерархии, намного легче было бы использовать вьювс)

Аватар пользователя Dan Dan 22 июня 2010 в 18:51

Я думаю в 7-ке будет получше со всем этим добром, т.к. появляется единый уровень абстракции - поле и термин - одно и тоже, а значит можно применять одинаковые механизмы к ним. Это упрощает создание модулей.
А насчёт урл терминам и вообще урл - всё решаемо: pathauto+token.

Аватар пользователя andypost@drupal.org andypost@drupal.org 23 июня 2010 в 21:51
"Dan" wrote:

А насчёт урл терминам и вообще урл - всё решаемо: pathauto+token.

В 7ке для этого есть entity_uri

Подробнее
http://api.drupal.org/api/function/taxonomy_field_formatter_view/7
http://api.drupal.org/api/function/hook_entity_info_alter/7

PS: Сие может поменяться в связи с http://drupal.org/node/823428

Аватар пользователя dj_popovich dj_popovich 3 февраля 2011 в 16:19

кароч мучился полдня.. нашел решение для создания иерархии (чтобы новость была под ссылкой новости)- модуль "Taxonomy Menu" + "Меnu Block" и использовать только родной словарь Tags. Можно запихать ссылки в меню, которое берет в себя термины таксономии... А при создании материала (story) пишешь термин из словаря - например "новости" - вместо того, чтобы как раньше выбирать из раскрывающегося списка.

Аватар пользователя FORTIS FORTIS 3 февраля 2011 в 16:28

странно но у меня не получается своему типу материала навешать несколько терминов в поле таксономии, для тегов работает, а для моего поля нет