Занимаюсь решением описанной ниже задачи и немного застрял в процессе.
С виду всё несложно: делаю сайт на Drupal 6, включил таксономию и поставил PathAuto 1.1 ("зелёный", не Dev) на пару с Token, разумеется.
Хочу в результате получить следующее: сайт с несколькими разделами и подразделами (которые на самом деле словари с терминами), например:
- Статьи
--- Программы (статьи о программах)
--- "Железо" (статьи о железе и т.д. ниже)
--- Технологии
Я бы хотел, чтобы адреса для материалов в этих разделах генерировались бы автоматически следующим образом:
mysite.ru/articles/software/nazvanie-stati
Однако, сейчас у меня получается следующее:
mysite.ru/stati/programmy/nazvanie-stati - шаблон [vocab-raw]/[term-raw]/[title-raw]
Соответственно, я хочу спросить: как наиболее корректно реализовать такую схему? (какие шаблоны использовать?)
Самое досадное в том, что я около года назад спокойно решил точно такую же задачу на Друпал 5. Тогда я нашёл очень хорошее руководство по PathAuto и у меня быстро всё получилось. Хотя почему-то мне вспоминается, что я ещё каким-то образом привязывался к меню...
P.S.
Кроме того, у меня в "Синонимах" (/admin/build/path), помимо правильных и нужных синонимов, есть вот такие:
taxonomy/term/1 -> taxonomy/term/
taxonomy/term/2 -> taxonomy/term/
taxonomy/term/3 -> taxonomy/term/... (слева "красивый" адрес, справа - системный).
Это нормально?
Комментарии
Поставьте pathauto, token, bonus_token.
Включите их.
Настройте тут: /admin/build/path/pathauto
Token у меня, разумеется, установлен. Без него же Pathauto даже работать не будет.
Про bonus_token слышу первый раз, спасибо. В прошлый раз (с Drupal 5), как и написано выше, я решил такую задачу без дополнительных модулей. Пока подожду, однако, если не будет прямого решения, воспользуюсь этим модулем.
Вы меня не внимательно прочитали
там смотрите:
Конечно же, я это сделал.
Иначе бы у меня никак не получалось ../stati/programmy/.., по умолчанию применяется [title-raw], т.е. только заголовок материала.
Сейчас у меня выставлена вот такая конструкция: [vocab-raw]/[term-raw]/[title-raw] (Шаблон для всех адресов материалов типа Заметка), но и она в итоге даёт немного не то.
Шаблон для всех адресов словаря Статьи: articles/[catpath-raw]
А этот шаблон, похоже, применяется только к терминам таксономии ("разделам" и "подразделам") и не влияет на материалы, которые в общем-то словарями или терминами не являются.
Я лично делаю так:
меняем [vocab-raw]/[term-raw]/[title-raw] на articles/[title-raw]. Зачем вам лишний пункт в ссылке.
по другому
идём в синонимы
ищем ваш taxonomy/term/ХХ и меняем на articles/software или что там вам нужно (просто найдите и измените ваш синоним )
Ребята, подскажите:
пишу в pathauto_taxonomy_pattern шаблон "category/[vocab]/[catpath]"
но ссылки все равно имеют вид /taxonomy/term/1 3 2
Чего ему не хватает? Почему не срабатывает pathauto?
Был такой глюк из-за языков. Т.е. стоял по дефолту английский, после того, как добавил контент, включил русский и такой же результат как у вас. Так и не нашёл тогда решения.
У меня с инсталляции русский и не менялся.
Может где "галочку" не поставил. Или очередность не соблюдаю. Или модули какие мешают (отключил Taxonomy Menu Custom Path и Taxonomy Menu Hierarchy - не помогло).
Как вообще это отладить можно?
Да, еще такая штука - в настройке Taxonomy menu выбрано Menu path type "по умолчанию"
И там приписочка:
If Default is selected then the path is taxonomy/term/tid
The menu path will be passed through drupal_get_path_alias() function so all aliases will be applied
но не работает зараза.
Так, ковырял-ковырял - всетаки проблема была в последовательности действий.
Словари созданные ДО(!) настройки PathAuto не конвертируются. Добавил новый словарь - конвертация произошла.
НО:
не конвертируется ссылка на Словарь, только на термины.
Может кто подскажет где посмотреть?
Зайди в настройку синонимов
в общей настройке установи Создавать новый синоним. Оставлять существующий синоним функционирующим.
в Настройки для терминов таксономии установи Массовое создание синонимов для терминов, которые не имеют ссылок
И при сохранении настроек синонимы создадутся автоматом.