Приветствую всех участников форума, я недавно начал изучать Drupal и зарегистрировался здесь.
Возникла необходимость формирования меню. Нужно, чтобы у каждой страницы был код идентификации, который задавался бы пользователем, например "products". И чтобы к этой странице можно было добавлять подстраницы (т. е. создать иерархическую страктуру). А ссылки должны формироваться автоматически и состоять из кодов идентификации родительских элементов, разделенных слешами.
Например:
1. Создаю страницы Продукты (id="products"), Ноутбуки (id="notebooks") и Компьютеры (id="computers").
2. Привязываю страницы Ноутбуки и Компьютеры как подразделы страницы Продукты.
3. Получаю доступ к странице Ноутбуки по адресу "/products/notebooks/"
PS
Кстати, почему Drupal не ставит закрывающий слеш?
Комментарии
Это делается таксономией. Смотрите раздел категории:
/?q=admin/content/taxonomy
Да, это первое, что я посмотрел. Но к сожалению я не нашел как можно там задать произвольные id и как вывести меню.
Облазил уже весь Интернет.... Это вообще реально?
Реально все.
Если вы хотя бы раз создавали страницу материала, то должны были заметить, что там есть возможность задать произвольный адрес этого материала, как он вам нужен - например, "/products/notebooks/".
Аналогично, там же можно задать пункт меню, который ведет на этот материал.
Такая возможность вас устроит?
Или необходимо, чтобы пользователь указывал только, в какой раздел отнести новую страницу? Тогда это таксономия и модуль taxonomy_menu.
Да, именно сейчас я так и делаю.
Однако такой способ мне не кажется хорошим решением, так как на сайте будет около 150 информативных страниц и каталог с примерно 700-800 товарами. Все бы ничего, но время от времени структура меняется и приходится целые ветви перемещать по иерархии.
Например, возможен вариант, когда придется изменить "/products/notebooks/" на "/products/portable/notebooks/" в нескольких сотнях страниц.
Изучите модуль Pathauto
Вроде бы изучил Pathauto частично.
С позиции моих представлений о нем, это - не выход. Т. к.
- нет возможности задавать id для страниц. Приходится прописывать сопоставление слов из названий английским эквивалентам в i18n-ascii.txt ручками.
- для изменения алиаса нужно править каждую страницу, нельзя автоматически перегенерировать алиас при измененении меню.
Реально все.
Это пока только слова. Как?
Снова ручками, как в Джумле что ли делать? Грустно...
Mенять адрес ноды при изменении таксономии не рекомендую. Изучите views и вывод материала взависимости от категорий.
Присмотритесь в настройка Pathauto к пункту
Мне кажется, что этот модуль - именно то, что Вам нужно, т.к. он решает задачи, сходные с Вшими.
Если владеете английским, посетите http://drupal.org/handbook/modules/pathauto
Там содержатся отличные рекомендации.