[PathAuto, Token] Надо иерархия URL alias

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

Аватар пользователя Kiselyov Kiselyov 7 декабря 2010 в 21:02

Привет!
У меня ест:

Новый тип нода "Сказки" с полем "field_avtor-Term reference(Словарь "Сказки")"

Сказки
=>Народные
= =>Украинские
= =>Еврейские
=>Авторские
= =>Василий
= =>Евгений

pathauto для словаря Сказки
http://test.com/skazki/ukrainskie
http://test.com/skazki/evrejskie
Норма... так как мне например и не надо чтобы было
http://test.com/skazki/narodnie/evrejskie

А вот проблема дальше.

Например в украинских сказках 2 сказки "Лопушок" и "Горшок"

через паттерн "skazki/[node:title]"
http://test.com/skazki/lopushok
http://test.com/skazki/gorshok

а как сделать

http://test.com/skazki/ukrainskie/gorshok
http://test.com/skazki/ukrainskie/lopushok

не знаю Sad

Хелп.

Комментарии

Аватар пользователя k-s k-s 7 декабря 2010 в 22:26

Посмотрите список доступных токенов, я не помню как в 6-ке, но в семерке работают такие паттерны [term:vocabulary]/[term:parent:parent:name]/[term:parent:name]/[term:name]

Аватар пользователя Kiselyov Kiselyov 7 декабря 2010 в 22:28

k-s wrote:
Посмотрите список доступных токенов, я не помню как в 6-ке, но в семерке работают такие паттерны [term:vocabulary]/[term:parent:parent:name]/[term:parent:name]/[term:name]

Smile В том то и дело!
для термов да... есть паренты, и можно норм сделать.
но вот для Нодов беда. А подставка в поля нода токенов терма ничего не дают Sad

Аватар пользователя Kiselyov Kiselyov 8 декабря 2010 в 12:07

xxandeadxx wrote:
http://www.drupal.ru/node/50308[/quote]
супер. то что надо, но это для Д6, а вопрос по 7рке.
очень печально... есть проэкт (почти 6 к страниц). все friendly урлы. самопис....
вот думал на друпал перейти, так как он "универсальный солдат".... Но оказалось все намного сложнее.
переходить с урлов норм на нода/id категорически не хочу.
дело не в сео. дело в том что на много удобнее человеку ориентироваться в blabla.net/skazki/pushkin/o-care-saltane.html нежели в node/3322

Аватар пользователя k-s k-s 8 декабря 2010 в 12:16

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

Я вот тоже сижу жду, не могу сайт запустить, нужно node_reference поля для адресов использовать, а пока нельзя

Аватар пользователя Antoniy Antoniy 8 декабря 2012 в 14:05

"Kiselyov" wrote:
удобнее человеку ориентироваться в blabla.net/skazki/pushkin/o-care-saltane.html

Генерация стройных URL, отображающих иерархию материала (Pathauto + Token + Node Hierarchy + CCK + Rules) Там для шестерки, но можно сделать по аналогии и для семерки.

Node Hierarchy под семерку пока в dev. версии, но сам он работает вполне сносно, но многое кое что надо донастраивать, например в списке токенов нет нужного, но он есть на орге, нужно донастроить views child.

Аватар пользователя Antoniy Antoniy 8 декабря 2012 в 14:50

"FORTIS" wrote:
с картиночками, изучайте

Спасибо!

Еще бы создать views child, который будет подставлять вкладку к ноду родителя с списком детей этого родителя и кнопочкой "create child", как это есть в Node Hirarchy. Но если есть root токены, то наверняка можно такой views создать

Аватар пользователя Antoniy Antoniy 8 декабря 2012 в 16:18

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

Аватар пользователя Antoniy Antoniy 9 декабря 2012 в 15:28

Иерархия с терминами таксономии через entity tokens получается. Но если нужна иерархия по меню без использования текста ссылок (menu-link:), то затык. Не получается выдергивать алиас родителя (хотя бы одного, а не parent:parents) для подстановки в паттерн.

Видимо с иерархией алиасов нод пока только более менее готовое решение это модуль Node Hierarchy c токеном подстановки алиаса родителя [node:nodehierarchy:parent:url:path] http://drupal.org/node/1618174

Аватар пользователя Antoniy Antoniy 9 декабря 2012 в 16:13

Таки нашел подходящий токен [node:menu-link:parent:url:path] который выдергивает алиас родителя по меню. Можно делать иерархические алиасы любого уровня вложенности. Взято отсюда.

У меня стоит в паттернах страниц
[node:menu-link:parent:url:path]/[node:field_sef_title]

А [node:field_sef_title] - это токен поля короткого машинного заголовока ноды (max. 15 симоволов) на латинице, который ставится в поле ручками, а если не поставлен то с помощью Rules автоматом ставится транслит заголовка.

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

Да и плюс такого решения в том, что основывается все на коробочных модулях Menu и Field и на всегда используемых модулях Pathauto и Token (если без автоподстановки title в пустое sef_tite, ведь sef_title можно сделать и обязательным полем). Минимум задействований.

Однако основный минус в том, что при изменении алиаса родителя при обновлении изменится и алиас ноды. Но с модулем Redirect можно сделать автоматические редиректы со старых (удаленных) алиасов на новые.