| |
wiki:overview [2023/08/18 15:27] – создано vladpolskiy | wiki:overview [2024/08/15 01:53] (текущий) – внешнее изменение 127.0.0.1 |
---|
^Имя файла ^Пример кода ^Описание ^ | ^Имя файла ^Пример кода ^Описание ^ |
| [[xref>doku.php]] |'' if(!defined('DOKU_INC')) '' | Все начинается с определения корневого каталога вики | | | [[xref>doku.php]] |'' if(!defined('DOKU_INC')) '' | Все начинается с определения корневого каталога вики | |
| ::: |'' $ACT = $_REQUEST['do'] '' | дальше определяется тип действия которое запрашивается, например [[ru:devel:action_modes|do режим]] | | | ::: |'' $ACT = $_REQUEST['do'] '' | дальше определяется тип действия которое запрашивается, например [[wiki:devel:action_modes|do режим]] | |
| ::: |'' require_once('init.php') '' | с помощью init.php, инициализируется ядро | | | ::: |'' require_once('init.php') '' | с помощью init.php, инициализируется ядро | |
| [[xref>inc/init.php]] |'' include('preload.php') '' | [[devel:preload|предзагрузка]] делает возможным перезапись каталогов и конфигураций| | | [[xref>inc/init.php]] |'' include('preload.php') '' | [[devel:preload|предзагрузка]] делает возможным перезапись каталогов и конфигураций| |
| ::: |'' if(!defined('DOKU_CONF') '' | создание [[ru:devel:environment|окружения]] определяет расположение кода | | | ::: |'' if(!defined('DOKU_CONF') '' | создание [[wiki:devel:environment|окружения]] определяет расположение кода | |
| ::: |'' include(DOKU_INC. 'inc/config_cascade.php') '' | подготовка и загрузка глобальной [[ru:devel:configuration|конфигурации]] файла(ов) | | | ::: |'' include(DOKU_INC. 'inc/config_cascade.php') '' | подготовка и загрузка глобальной [[wiki:devel:configuration|конфигурации]] файла(ов) | |
| ::: |'' global $lang; '' | загружает и подготавливает [[devel:localization|языковые]] файлы используя "английские" для всех не найденных вхождений | | | ::: |'' global $lang; '' | загружает и подготавливает [[devel:localization|языковые]] файлы используя "английские" для всех не найденных вхождений | |
| ::: |'' if(!defined('DOKU_REL') '' | создает остальные [[ru:devel:environment|переменные_окружения]] которые еще не были созданы, так как зависели от [[ru:config|конфигурационных]] настроек | | | ::: |'' if(!defined('DOKU_REL') '' | создает остальные [[wiki:devel:environment|переменные_окружения]] которые еще не были созданы, так как зависели от [[wiki:config|конфигурационных]] настроек | |
| ::: |'' if(!headers_sent() && .. '' | создание сессии и установка куков | | | ::: |'' if(!headers_sent() && .. '' | создание сессии и установка куков | |
| ::: |'' require_once (DOKU_INC.'inc/load.php') '' | [[autoloader|подгружает]] все библиотеки | | | ::: |'' require_once (DOKU_INC.'inc/load.php') '' | [[autoloader|подгружает]] все библиотеки | |
| ::: |'' ... \\ auth_setup() \\ ... '' | инит контроллера плагинов, системы [[devel:events|перехвата событий]], аутентификации и выход после настройки почты | | | ::: |'' ... \\ auth_setup() \\ ... '' | инит контроллера плагинов, системы [[devel:events|перехвата событий]], аутентификации и выход после настройки почты | |
| [[xref>doku.php]] |'' $ID = getID() '' | возврат из init.php, очистка и передача запроса на [[ru:devel:environment|глобальные переменные]]| | | [[xref>doku.php]] |'' $ID = getID() '' | возврат из init.php, очистка и передача запроса на [[wiki:devel:environment|глобальные переменные]]| |
| ::: |'' $INFO = pageinfo() '' | добавление [[ru:devel:metadata|метаданных]] страницы в [[ru:devel:environment|глобальные переменные]] с помощью [[xref>auth_quickaclcheck()]] и [[xref>p_get_metadata()]]. Позже вызывается ее рендеринг, если она не кешируется. | | | ::: |'' $INFO = pageinfo() '' | добавление [[wiki:devel:metadata|метаданных]] страницы в [[wiki:devel:environment|глобальные переменные]] с помощью [[xref>auth_quickaclcheck()]] и [[xref>p_get_metadata()]]. Позже вызывается ее рендеринг, если она не кешируется. | |
| ::: |'' if(!$INFO['exists'] ... '' | отправляет 404 для не найденных страниц | | | ::: |'' if(!$INFO['exists'] ... '' | отправляет 404 для не найденных страниц | |
| ::: |'' trigger_event(DOKUWIKI_STARTED)'' | запускает [[ru:devel:action_plugins|плагины действий]] которые слушают [[devel:event:dokuwiki_started|DOKUWIKI_STARTED]] события | | | ::: |'' trigger_event(DOKUWIKI_STARTED)'' | запускает [[wiki:devel:action_plugins|плагины действий]] которые слушают [[devel:event:dokuwiki_started|DOKUWIKI_STARTED]] события | |
| [[xref>inc/actions.php]] |'' act_dispatch($ACT) '' | выполняет работы по указанному [[ru:devel:action_modes|действию]] | | | [[xref>inc/actions.php]] |'' act_dispatch($ACT) '' | выполняет работы по указанному [[wiki:devel:action_modes|действию]] | |
| ::: |''%%if ($evt->advise_before()) ...%%''| позволяет плагинам переопределять обычное поведение используя событие [[devel:event:action_act_preprocess|ACTION_ACT_PREPROCESS]] | | | ::: |''%%if ($evt->advise_before()) ...%%''| позволяет плагинам переопределять обычное поведение используя событие [[devel:event:action_act_preprocess|ACTION_ACT_PREPROCESS]] | |
| ::: |'' $ACT = act_clean($ACT) '' | очистка и перенаправление [[ru:config:disableactions|отключенных действий]] на действие отображения страницы ''do=show''| | | ::: |'' $ACT = act_clean($ACT) '' | очистка и перенаправление [[wiki:config:disableactions|отключенных действий]] на действие отображения страницы ''do=show''| |
| ::: |'' ... \\ $ACT = act_permcheck($ACT) \\ ... '' | проверяет ACL-разрешения на выполнение запрошенных действий. Переменная $ACT может меняться в процессе выполнения [[xref>act_dispatch()]]. | | | ::: |'' ... \\ $ACT = act_permcheck($ACT) \\ ... '' | проверяет ACL-разрешения на выполнение запрошенных действий. Переменная $ACT может меняться в процессе выполнения [[xref>act_dispatch()]]. | |
| ::: |'' global $INFO \\ global $conf '' | делает доступными глобальные переменные для кода шаблона | | | ::: |'' global $INFO \\ global $conf '' | делает доступными глобальные переменные для кода шаблона | |
| ::: |'' trigger_event(ACTION_HEADERS_SEND) '' | запускает [[ru:devel:action_plugins|экшен плагины]] по событию [[devel:event:action_headers_send|ACTION_HEADERS_SEND]] | | | ::: |'' trigger_event(ACTION_HEADERS_SEND) '' | запускает [[wiki:devel:action_plugins|экшен плагины]] по событию [[devel:event:action_headers_send|ACTION_HEADERS_SEND]] | |
| ::: |'' include(template('main.php')) '' | добавляет базовый код страницы в выбранный шаблон | | | ::: |'' include(template('main.php')) '' | добавляет базовый код страницы в выбранный шаблон | |
| [[xref>lib/tpl/default/main.php]] |'' ... \\ tpl_metaheaders() \\ ... '' | главный скрипт [[template|шаблона]] состоит из элементов HTML дизайна с включением php запросов для наполнения контента как например метазаголовки, кнопки, элементы навигации и тд.. все находится в [[xref>inc/template.php]] файле | | | [[xref>lib/tpl/default/main.php]] |'' ... \\ tpl_metaheaders() \\ ... '' | главный скрипт [[template|шаблона]] состоит из элементов HTML дизайна с включением php запросов для наполнения контента как например метазаголовки, кнопки, элементы навигации и тд.. все находится в [[xref>inc/template.php]] файле | |
| ::: |'' trigger_event(TPL_ACT_RENDER) '' | вызов [[xref>tpl_content_core()]] по событию [[devel:event:tpl_act_render|TPL_ACT_RENDER]] | | | ::: |'' trigger_event(TPL_ACT_RENDER) '' | вызов [[xref>tpl_content_core()]] по событию [[devel:event:tpl_act_render|TPL_ACT_RENDER]] | |
| ::: |'' switch($ACT) '' | выбор контента на основании действия, основной ''do=show'' вызывает [[xref>html_show()]] | | | ::: |'' switch($ACT) '' | выбор контента на основании действия, основной ''do=show'' вызывает [[xref>html_show()]] | |
| [[xref>inc/html.php]] |'' $html = p_wiki_xhtml(...) '' | который использует [[ru:devel:caching#Двухстадийное кэширование|кешированную XHTML]] версию страницы __ИЛИ__ запускает [[parser|парсер-визуализатор]] для отображения закэшированных инструкции как XHTML __ИЛИ__ использует [[parser|парсер]] для перевода вики текста в инструкции, в первую очередь. | | | [[xref>inc/html.php]] |'' $html = p_wiki_xhtml(...) '' | который использует [[wiki:devel:caching#Двухстадийное кэширование|кешированную XHTML]] версию страницы __ИЛИ__ запускает [[parser|парсер-визуализатор]] для отображения закэшированных инструкции как XHTML __ИЛИ__ использует [[parser|парсер]] для перевода вики текста в инструкции, в первую очередь. | |
| [[xref>inc/template.php]] |'' trigger_event(TPL_CONTENT_DISPLAY) '' | возврат в [[xref>tpl_content()]]. [[action plugins|action-плагины]] имеют последний шанс на модификацию сырого HTML перед его отображением по событию [[devel:event:tpl_content_display|TPL_CONTENT_DISPLAY]] | | | [[xref>inc/template.php]] |'' trigger_event(TPL_CONTENT_DISPLAY) '' | возврат в [[xref>tpl_content()]]. [[action plugins|action-плагины]] имеют последний шанс на модификацию сырого HTML перед его отображением по событию [[devel:event:tpl_content_display|TPL_CONTENT_DISPLAY]] | |
| [[xref>doku.php]] |'' trigger_event(DOKUWIKI_DONE) '' | завершение и вызов [[action plugins|action-плагинов]] которые ждут [[devel:event:dokuwiki_done|DOKUWIKI_DONE]] события, после завершения работы главного скрипта шаблона | | | [[xref>doku.php]] |'' trigger_event(DOKUWIKI_DONE) '' | завершение и вызов [[action plugins|action-плагинов]] которые ждут [[devel:event:dokuwiki_done|DOKUWIKI_DONE]] события, после завершения работы главного скрипта шаблона | |
| |
| |