Содержание
Переменные окружения
Эта статья предоставит вам краткий обзор доступных переменных и констант, которые вы можете использовать при разработке плагинов или шаблонов.
Глобальные переменные
$ACT
Содержит текущее действие, см. режимы действий. (reference)
$auth
Глобально доступный объект $auth
, представляет используемый бэкенд аутентификации. (reference)
$conf
Глобально доступный массив $conf
содержит все настройки «ДокуВики». В основном, он соответствует следующей структуре:
$conf[<setting_name>]
— настройки «ДокуВики» (см. Конфигурирование «Докувики»)$conf[<setting_group>][<setting_name>]
— некоторые настройки «ДокуВики» используют этот формат, т.е. настройки ftp, proxy и target.$conf['tpl'][<template_name>][<setting_name>]
— настройки конфигурации шаблона, см. документацию по шаблону.$conf['plugin'][<plugin_name>][<setting_name>]
— настройки конфигурации плагина, см. документацию по плагину.$conf['auth'][<auth_name>][<setting_name>]
— настройки конфигурации бэкенда аутентификации, см. документацию по бэкенду аутентификации.
Обычно вам нет необходимости непосредственно обращаться к этому массиву. И плагины, и шаблоны имеют собственные методы для доступа к их настройкам конфигурации.
(reference)
$ID
Содержит имя «рендеримой» в настоящий момент статьи. Обычно это просматриваемая в настоящий момент, но не обязательно - см. ниже $INFO['id']
. (reference)
$INFO
Это ассоциативные массив, заполненный информацией предоставленной функцией pageinfo() из inc/common.php
.
В настоящий момент элементами массива является:
id
— имя основной статьи просматриваемой в настоящий момент. Обычно совпадает с$ID
, но иногда может быть другой. См. подробности в 1320.rev
— номер версии основной статьи, просматриваемой в настоящий момент, обычно совпадает с $REV.userinfo
— установлен только для зарегистрированных пользователей, ассоциативный массив:pass
— пароль, зашифрованныйname
— полное имяmail
— адрес emailgrps
— группы, к которым относится пользователь (массив [Array ])buid
— специальный id, сконструированный из браузера и IP адреса пользователя
perm
— права пользователя, относящиеся к текущей статье ($ID)subscribed
— true, если пользователь подписан на эту статью, иначе falsenamespace
— пространство имен, к которой относится текущая статья ($ID)locked
— true, если статья заблокирована, иначе falsefilepath
— путь в файловой системе к сырым данным wiki текущей статьи ($ID+$REV)exists
— true, если сырые данные wiki текущей статьи существуют ($ID+$REV), иначе falserev
— id версии для текущей статьи ($ID), пустая статья, если просматривается текущая версияwritable
— true, если для текущей статьи ($ID+$REV) комбинация наличия файла, разрешений файла и разрешений ACL пользователя позволяет редактировать существующий файл или создать еще не существующий файл. Иначе false.editable
— true, если текущая статья ($ID+$REV) доступна для записи и не заблокирована.lastmod
— временная метка последней модификации текущей статьи ($ID+$REV)meta
— метаданные текущей статьи ($ID)ip
— ip адрес последнего редактировавшего текущую статью ($ID+$REV) пользователяuser
— username последнего редактировавшего текущую статью ($ID+$REV) пользователяsum
— краткая анотация изменений текущей статьи ($ID+$REV)editor
— имя пользователя (или ip адрес, если имя неизвестно) последним редактировавшего текущую статью ($ID+$REV)isadmin
— true, если зарегистрированный пользователь является суперпользователемismanager
— true, если зарегистрированный пользователь является менеджеромdraft
— содержит название файла черновика для текущего пользователя и статьи.ismobile
— true, если статья просматривается с мобильного устройства или телефона.client
— имя пользователя, зарегистрированного в настоящий момент
$lang
Ассоциативный массив, содержащий все строки перевода интерфейса, плагинов и шаблонов. (reference)
$REV
Содержит штамп времени версии отображаемой в настоящий момент статьи. false
, если рассматривается самая свежая версия статьи. (reference)
$_SERVER['REMOTE_USER']
Эта переменная явно прописывается механизмом аутентификации «ДокуВики», когда юзер зарегистрировался, и содержит имя пользователя.
$TEXT
В режимах save
и preview
эта глобальная переменная содержит текст предоставленный в форме редактирования. (reference)
$TOC
Эта переменная будет использована (если заполнена) функцией tpl_toc() для построения "содержания" статьи. Обычно, эта переменная пуста и tpl_toc() строит «содержание» из метаданных статьи. (reference)
$USERINFO
Глобально доступный ассоциативный массив, который содержит информацию об авторизованном пользователе.
- pass - хэш пользовательского пароля
- name - полное имя пользователя
- mail - e-mail адрес пользователя
- grps - массив групп, к которым относится пользователь
(reference)
$JSINFO
Этот массив содержит данные, передаваемые JavaScript в качестве глобальной переменной (смотри jsinfo).
Константы
Ниже приведен список наиболее важных констант.
AUTH_<*>
Тип констант AUTH_<*>
представляет уровни доступа (в виде целых чисел) используемые в системе списков доступа «ДокуВики». Они могут для того, чтобы проверка списков доступа к данной статье /пространству имен выглядела более понятной.
if (auth_quickaclcheck($ID) >= AUTH_READ) { // do sth. }
AUTH_NONE
- Тип: Целое
- Значение: 0
- reference
AUTH_READ
- Тип: Целое
- Значение: 1
- reference
AUTH_EDIT
- Тип: Целое
- Значение: 2
- reference
AUTH_CREATE
- Тип: Целое
- Значение: 4
- reference
AUTH_UPLOAD
- Тип: Целое
- Значение: 8
- reference
AUTH_DELETE
- Тип: Целое
- Значение: 16
- reference
AUTH_ADMIN
- Тип: Целое
- Значение: 255
- reference
DOKU_<*>
Тип констант DOKU_<*>
содержит различные системные значения для внутреннего использования «ДокуВики».
DOKU_BASE
Базовый URL инсталляции «ДокуВики». (reference)
/dokuwiki/
DOKU_CONF
Путь к директории конфигурации инсталляции DokuWiki на сервере. (reference)
/var/www/dokuwiki/conf/
DOKU_REL
Базовый URL к инсталляции «ДокуВики» (reference)
DOKU_URL
Абсолютный URL к инсталляции DokuWiki (reference)
DOKU_INC
Путь к директории включаемых файлов инсталляции DokuWiki на сервере. (reference)
/var/www/dokuwiki/
DOKU_TPL
Путь к директории используемого шаблона на сервере. (reference)
/dokuwiki/lib/tpl/<template>/
DOKU_TPLINC
Путь к директории включаемых файлов используемого шаблона на сервере. (reference)
lib/tpl/<template>/
Или если установлен параметр canonical:
http//domain.org/lib/tpl/<template>/ https://www.dokuwiki.org/wiki:devel:environment