простой и мощный вики-движок
 

Пространства имен

В 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

Страницы проверяются в этом порядке и ссылка указывает на первую найденную.

1) На сервере, который обслуживает DokuWiki, простанство имен - это обычная директория в которой находятся текстовые файлы - страницы DokuWiki.
2) Страница по умолчанию может называться не только «start», для этого надо указать нужное значение в настройках DokuWiki#start

Обсуждение

Knight, 2009/08/25 00:38

Добрый день. У меня используется шаблон dokubook, в котором автоматически создается sidebar и при этом включена полная транслитерация, как сделать, чтобы в sidebar отображались не транслитерованные названия страниц я прочитал, подскажите пожалуйста, возможно ли при этом сделать также, чтобы в sidebar отображались и не транслитерованные названия пространств имен?

И еще один вопрос по sidebar, возможно ли там каким-либо образом менять расположение страниц и пространств имен, т.е. допустим у меня есть следующий sidebar:

Пространство имен
Пространство имен
Страница

можно ли поменять местами пространство имен и страницу, чтобы получилось так:

Страница
Пространство имен
Пространство имен

Насколько я понял по умолчанию все составляется в алфавитном порядке.

Попробуйте изменить настройку «Первый заголовок вместо имени». Если не поможет - значит шаблон dokubook её игнорирует и придётся переписывать код шаблона.

Knight, 2009/08/25 08:32

Это настройка включена, с помощью нее в sidebar выводятся не транслитерованные имена страниц, но это страницы и там можно прописать первый заголовок при редактировании страницы, а в пространстве имен это нельзя сделать, т.к. там собственно ничего не редактируется.

Knight, 2009/08/26 05:44

Разобрался с редактированием sidebar, если создать страницу с именем navigation (при условии, что это имя Вы не меняли в настройках шаблона), то там можно создать нужный sidebar, но сейчас возник вопрос, как сделать раскрывающиеся по щелчку мышкой пункты?

Ruslan, 2009/10/16 05:13

Поддерживаю предыдущий вопрос по поводу «как сделать раскрывающиеся по щелчку мышкой пункты?»

Раскрывающие по щелчку мышкой пункты (если вы имеете в виду дерево ссылок, навигация по которому не перезагружает текущей страницы) - это уже к вопросу модифицирования темы. Нужно в тему добавить CSS стили и JavaScript код, которые будут реализовывать нужный вам функционал.

Однако можно сделать «эмуляцию» раскрывающихся пунктов, когда в каждом пространстве имён сделаны свои боковые меню, а в основном пространстве имён - боковое меню содержит ссылки на внутренние пространства имён.

Если вам есть что сказать, добавьте свой комментарий (разрешена wiki разметка):
IEHRO
 
namespaces.txt · Последние изменения: 2010/01/29 13:43 От o-k
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki