В DokuWiki вы можете использовать так называемые «Пространства имен» или «Именные пространства» для упорядочивания ваших страниц.1)
Для создания пространств имен не нужно предпринимать каких-то специальных действий: просто используйте двоеточие : в названиях страниц. Часть названия после последнего двоеточия станет названием страницы (файла), а все, что находиться до, станет именным простанством (последовательностью вложенных директорий). Если такого именого пространства еще нет, оно создастся автоматически.
| Ссылка | указывает на страницу (файл) «example» |
|---|---|
| example .example .:example | в текущем именном простанстве. |
| :example | в корневом именном пространстве. |
| ..example ..:example .:..:example | в родительском именном пространстве (директории на уровень выше) |
| wiki:example | в именном пространстве «wiki». Именное пространство «wiki» вложено в корневое именное пространство. |
| ns1:ns2:example :ns1:ns2:example | страница «example» находится в именном пространстве «ns2». Пространство «ns2» расположено в пространстве «ns1», которое, в свою очередь, лежит в корневом именном пространстве. |
| .ns1:ns2:example .:ns1:ns2:example | страница «example» находится в именном пространстве «ns2». Пространство «ns2» расположено в пространстве «ns1», лежащем, в свою очередь, в текущем именном пространстве. |
| .ns1:ns2: | ссылается на страницу «start» в именном пространстве «ns2». Именное пространство «ns2» расположено в именном пространстве «ns1», лежащем, в свою очередь, в текущем именном пространстве.2) |
Если все страницы внутри пространства имен удалены, это пространство имен логически перестает существовать. DokuWiki обычно удаляет соответствующую ему пустую директорию.
Для перемещения каждой из страниц из старого пространства имен в новое вы можете использовать плагин PageMove. Ознакомьтесь с документацией, чтобы понять, соответствует ли это тому, что вам нужно.
Ручной способ гораздо более трудоемкий.
Можно задавать ссылку на файл по умолчанию для пространства имен, заканчивая ссылку двоеточием: [[foo:bar:]]. На какую страницу указывает ссылка, зависит от наличия файлов с определенными именами. Для [[foo:bar:]] проверяется существование следующих страниц:
foo:bar:$conf['start'] foo:bar:bar foo:bar
Страницы проверяются в этом порядке и ссылка указывает на первую найденную.
Обсуждение
Добрый день. У меня используется шаблон dokubook, в котором автоматически создается sidebar и при этом включена полная транслитерация, как сделать, чтобы в sidebar отображались не транслитерованные названия страниц я прочитал, подскажите пожалуйста, возможно ли при этом сделать также, чтобы в sidebar отображались и не транслитерованные названия пространств имен?
И еще один вопрос по sidebar, возможно ли там каким-либо образом менять расположение страниц и пространств имен, т.е. допустим у меня есть следующий sidebar:
Пространство имен
Пространство имен
Страница
можно ли поменять местами пространство имен и страницу, чтобы получилось так:
Страница
Пространство имен
Пространство имен
Насколько я понял по умолчанию все составляется в алфавитном порядке.
Попробуйте изменить настройку «Первый заголовок вместо имени». Если не поможет - значит шаблон dokubook её игнорирует и придётся переписывать код шаблона.
Это настройка включена, с помощью нее в sidebar выводятся не транслитерованные имена страниц, но это страницы и там можно прописать первый заголовок при редактировании страницы, а в пространстве имен это нельзя сделать, т.к. там собственно ничего не редактируется.
Разобрался с редактированием sidebar, если создать страницу с именем navigation (при условии, что это имя Вы не меняли в настройках шаблона), то там можно создать нужный sidebar, но сейчас возник вопрос, как сделать раскрывающиеся по щелчку мышкой пункты?
Поддерживаю предыдущий вопрос по поводу «как сделать раскрывающиеся по щелчку мышкой пункты?»
Раскрывающие по щелчку мышкой пункты (если вы имеете в виду дерево ссылок, навигация по которому не перезагружает текущей страницы) - это уже к вопросу модифицирования темы. Нужно в тему добавить CSS стили и JavaScript код, которые будут реализовывать нужный вам функционал.
Однако можно сделать «эмуляцию» раскрывающихся пунктов, когда в каждом пространстве имён сделаны свои боковые меню, а в основном пространстве имён - боковое меню содержит ссылки на внутренние пространства имён.