Ситуация такая:
Создан словарь таксономии. На сайте он имеет адрес http://мой_сайт.ru/articles
В нём созданы термины, привязанные к адресам
http://мой_сайт.ru/articles/1_термин
http://мой_сайт.ru/articles/2_термин
и так далее.
Требуется, чтобы ноды, относящиеся, к примеру, к 1 термину, имели адрес http://мой_сайт.ru/articles/1_термин/номер_ноды
Работать по этой схеме pathauto не хочет вообще никак. Плюс вылез вопрос как быть со статьями, относящимися к нескольким терминам таксономии. Кто-нибудь сталкивался с такой ситуацией?
Заранее спасибо за помощь.
Комментарии
[vocab]/[catpath]/[nid] - это не работает? Должно работать.
Плюс вылез вопрос как быть со статьями, относящимися к нескольким терминам таксономии.
pathauto выберет тот термин, который стоит первым и от него будет рисовать путь для данного материала
проверил, не работает. получается адрес http://мой_сайт.ru/номер_ноды
Ни articles, ни названия термина не выводит...
Это странно, у меня, например, как раз такие конструкции во всю работают. Кстати, дополнительного гемороя можно избежать, если словарям создавать свой тип материала, т.е. если допустим словарь - articles - создавайте ему свой тип - articles. Так будет еще проще управиться с настройкой адресов в pathauto. В этом случае в настройках адреса материала пропишите что-то типа - articles/[catpath]/[nid]
А как быть, если используешь категории? Тоже [vocab]/[catpath]/[nid]? У меня такая же ситуация, пишу в настройках pathauto этот путь, а материал все равно появляется как адрес_сайта/номер_ноды
Onza - у меня создано 3 типа материала. News, Articles и Static.
Соответственно для новостей, статей и статичных страниц типа "О нас".
Созданы 2 словаря - Новости, с привязанным к нему типу материала News и Статьи - соответственно, Articles.
Попробовал articles/[catpath]/[nid] - получил вот такое http://мой_сайт.ru/articles/15
Термин таксономии снова не проявился в адресе.
Термин таксономии снова не проявился в адресе.
Ага, понятно. Блин, сейчас вспомнил, что тоже сталкивался с такой ерундой, но это было на 4.7 (сейчас пятая) по моему в феврале. Тогда был создан новый словарь с терминами и по совершенно непонятной причине термины из этого нового словаря в адресе не появлялись. В конце концов пришлось его грохнуть через пару дней... После обновления на пятую версию больше таких проблем не замечал. Я так и не выяснил что это было (
Если знатоки ничего не подскажут, попробуйте опытным путем, т.е. подставлять вместо [catpath] другие значения и посмотрите на результат - может и выяснятся причины этой фигни.
Еще попробуйте через стандартный /admin/build/path прописать друпалу псевдоним словаря и терма, т.е. к примеру вместо taxonomy/vocabulary/1 указать - articles, а вместо taxonomy/term/2 указать moytermin. Пример конечно условный. После этого попробуйте создать материал с настройками [vocab]/[catpath]/[nid]
И еще посмотрите в /admin/build/path что там pathauto вообще нарисовал.
А также посмотрите на транслитерацию в pathauto. Она есть?
Кто-нибудь использует модуль pathauto совместно с category?
Onza says: И еще посмотрите в /admin/build/path что там pathauto вообще нарисовал.
Pathauto у меня заменил taxonomy/term/2 на regions/2; node/5 на n-0. Но если в адресной строке написать мой_сайт/regions/2, автоматически ставится мой_сайт/node/2.
Пробовал переустанавливать друпал - не помогает.
Onza says:А также посмотрите на транслитерацию в pathauto.
Это что такое?
Это что такое?
это то, что заменяет (транслитерует) русские или другие символы (буквы и слова) на латинские. Для этого в папке модуля есть файл i18n-ascii.example.txt, в который надо внести нужную транслитерацию и переименовать его в i18n-ascii.txt (в нем есть пример).
После этих манипуляций адреса будут типа: http://www.drupal.ru/zametki/kak-ya-provel-leto
Полевые испытания показали полный бред, но я всё же почти добился требуемого.
Испытание проводилось на
кошкахсайте http://hearing-aids.ruРешение получилось таким:
Словарь имеет синоним articles
Термины этого словаря, чтобы для пользователя была понятна логика адресов, получили синонимы типа "articles/aids", "articles/hear" и так далее. Именно так, из двух слов через слэш.
В итоге настройка в pathauto [catalias]/[nid] дала адрес вида http://hearing-aids.ru/articles/aids/15 , т.е. название_термина/внутренний_друпаловский_номер_ноды.
К сожалению нумерации типа 1, 2, 3, ... для каждого термина я так и не добился.
Что интересно, при попытках сделать всё "по-умному", т.е. при назывании термина "aids", а не "articles/aids" и использовании [vocab]/[catalias]/[nid] получался какой-то непонятный адрес http://hearing-aids.ru/c/aids/13. Откуда вылезало это "c" я так и не понял.
Что интересно, при попытках сделать всё "по-умному", т.е. при назывании термина "aids", а не "articles/aids" и использовании [vocab]/[catalias]/[nid] получался какой-то непонятный адрес http://hearing-aids.ru/c/aids/13. Откуда вылезало это "c" я так и не понял.
Так вроде все получилось как и должно быть, нет? За исключением синонима словаря. "С" наверное заменяет синоним словаря, проверьте это в admin/build/path
Нет, "c" там нет. Синоним для словаря - "articles"
Надо либо лезть в pathauto и править его, либо писать свой модуль. Второе решение лучше. IMHO
Если честно, то я очень удивился, что этот вопрос ни у кого не всплывал. Казалось бы, достаточно частая задача...
Эта "с" всплыла из настроек синонимов по адресу admin/build/path. Если с друпалом использовать категории, и материал структурирован так: контейнер/категории/ноды, то добиться нужного адреса можно:
Установки пути: [catalias]/[title]
Установка пути для категории: имя_контейнера/[catpath]
Только никак не получается задавать таким образом синонимы адресов самих категорий и контейнеров, только нод, принадлежащих им.
Только никак не получается задавать таким образом синонимы адресов самих категорий и контейнеров, только нод, принадлежащих им.
Немного непонятно вот что: Вы говорите здесь и в предыдущих постах о категориях. Имеется ввиду модуль "Категории", который апгрейдит стандартную таксономию?
Onza says: Вы говорите здесь и в предыдущих постах о категориях. Имеется ввиду модуль "Категории", который апгрейдит стандартную таксономию?
Да, этот модуль.
Ребята помогите настроить pathauto(готов заплатить пару баксов).
Все категории размещены сдесь: Administer › Content management › Categories
В настройках pathauto поставил:
Category path settings
Default path pattern (applies to all vocabularies with blank patterns below):
category/[vocab]/[catpath]
Pattern for all Category paths:
(тут ничего не писал.)
Node path settings
Default path pattern (applies to all node types with blank patterns below):
[cat]/[title]
Pattern for all Blog entry paths:
[cat]/[title]
Pattern for all Poll paths:
[cat]/[title]
Pattern for all Page paths:
[cat]/[title]
Pattern for all Story paths:
[cat]/[title]
Выводит примерно такие ссылки: blog/%5Bcat%5D/interesting-reading... Как сделать чтобы не писало (%5Bcat%5D) а нормальную категорию?
Я знаю что pathauto когда преобразовывет url он перекодирует в спец символы все разделительные знаки. Как это исправить?(тоесть чтобы url был нормальный а не с ?:?%;)
Понимаю что никто не захочит париться с этим бесплатно. Могу немного заплатить или чтото сделать взамен. Только помогите. Если что вот ася для связи: 294-5два два-0семь9
у тебя в папке патавто лежит файл i18n-ascii.example.txt. Переименуй его в i18n-ascii.txt. Сотри все алиасы и попробуй заново. Перед всем этим сделай бэкап. и почитай вот это
Заменл. Ничего не изменилось. Ту статью читал. Может надо дописать, чтобы точку он кодировал как точку и т. д.
В файле пишет это:
ð = "d"
à = "D"
þ = "th"
Þ = "TH"
знаки препинания в урле не стоит держать. надо смотреть твой сайт. я так не могу угадать где намудрено.
Как сделать чтобы выводил категорию. Сайт английский.
Выводит примерно такие ссылки: blog/%5Bcat%5D/interesting-reading... Как сделать чтобы не писало (%5Bcat%5D) а нормальную категорию?
у меня есть свои синонимы вида
site.ru/article
site.ru/news
как мне сделать, что бы автоматически ссылки создавались вида
site/article/article1.html
site.ru/news/news1.html
Пробывал [vocab] но оно мне переделывает как
site.ru/stati/article1.html
site.ru/novosti/news1.html
то есть как название термина, а мне надо именно, что бы мои article и news использовало
Вообщем я сделал так:
1. Создал новый тип материала, а потом в настройках модуля выставил для каждого типа
news/и тут или номер ноды, или еще что-то
http://www.kvn.name/scenario
http://www.kvn.name/kvnjokes
http://www.kvn.name/videokvn
что-то типа такого получилось.