Предыдущая версия справа и слеваПредыдущая версия | |
wiki:devel:overview [2025/01/03 15:02] – vladpolskiy | wiki:devel:overview [2025/01/03 15:10] (текущий) – внешнее изменение 127.0.0.1 |
---|
| |
^ Filename ^ Code snippet ^ Description ^ | ^ Filename ^ Code snippet ^ Description ^ |
| [[xref>doku.php]] | '' if(!defined('DOKU_INC')) '' | Все начинается здесь с определения базового каталога кода. | | | :&13:[[wiki:xref:dokuwiki:doku.php|doku.php]] | '' if(!defined('DOKU_INC')) '' | Все начинается здесь с определения базового каталога кода. | |
| ::: | '' $ACT = $_REQUEST['do'] '' | Далее мы определяем, какое действие запрашивается, то есть [[wiki:devel:action_modes|режимы do]] | | | ::: | '' $ACT = $_REQUEST['do'] '' | Далее мы определяем, какое действие запрашивается, то есть [[wiki:devel:action_modes|режимы do]] | |
| ::: | '' require_once('init.php') '' | перейти к init.php, инициализировать ядро | | | ::: | '' require_once('init.php') '' | перейти к init.php, инициализировать ядро | |
| ::: | '' require_once (DOKU_INC.'inc/load.php') '' | [[wiki:devel:autoloader|autoload]] всех библиотек | | | ::: | '' require_once (DOKU_INC.'inc/load.php') '' | [[wiki:devel:autoloader|autoload]] всех библиотек | |
| ::: | '' ... \\ auth_setup() \\ ... '' | инициализирует контроллер плагина, [[wiki:devel:events|event handling]] систему обработки событий , аутентификацию и выход после настройки почты | | | ::: | '' ... \\ auth_setup() \\ ... '' | инициализирует контроллер плагина, [[wiki:devel:events|event handling]] систему обработки событий , аутентификацию и выход после настройки почты | |
| [[xref>doku.php]] | '' $ID = getID() '' | вернуться из init.php, очистить и превратить запрос в глобальные переменные [[wiki:devel:environment|global variables]] | | | :&13:[[wiki:xref:dokuwiki:doku.php|doku.php]] | '' $ID = getID() '' | вернуться из init.php, очистить и превратить запрос в глобальные переменные [[wiki:devel:environment|global variables]] | |
| ::: | '' $INFO = pageinfo() '' | добавить метаданные страницы [[wiki:devel:metadata]] в глобальную переменную [[wiki:devel:environment|global variable]], это включает вызов [[xref>auth_quickaclcheck()]] и [[xref>p_get_metadata()]]. Последний вызывает рендеринг метаданных страницы, если они не кэшированы. | | | ::: | '' $INFO = pageinfo() '' | добавить метаданные страницы [[wiki:devel:metadata]] в глобальную переменную [[wiki:devel:environment|global variable]], это включает вызов [[xref>auth_quickaclcheck()]] и [[xref>p_get_metadata()]]. Последний вызывает рендеринг метаданных страницы, если они не кэшированы. | |
| ::: | '' if(!$INFO['exists'] ... '' | отправьте 404 для отсутствующих страниц | | | ::: | '' if(!$INFO['exists'] ... '' | отправьте 404 для отсутствующих страниц | |
| ::: | '' trigger_event(ACTION_HEADERS_SEND) '' | плагины действий [[action plugins]] вызова , подписывающиеся на событие [[wiki:devel:event:action_headers_send|ACTION_HEADERS_SEND]] | | | ::: | '' trigger_event(ACTION_HEADERS_SEND) '' | плагины действий [[action plugins]] вызова , подписывающиеся на событие [[wiki:devel:event:action_headers_send|ACTION_HEADERS_SEND]] | |
| ::: | '' include(template('main.php')) '' | к выбранному шаблону основного скрипта | | | ::: | '' include(template('main.php')) '' | к выбранному шаблону основного скрипта | |
| [[xref>lib/tpl/dokuwiki/main.php]] | '' ... \\ tpl_metaheaders() \\ ... '' | Основной скрипт шаблона [[template]] состоит из элементов дизайна HTML , вызывающих методы PHP для такого контента, как метазаголовки, кнопки, элементы навигации и т. д. Все они доступны в файле [[xref>inc/template.php]] | | | :&13:[[wiki:xref:dokuwiki:lib:tpl:dokuwiki:main.php|lib/tpl/dokuwiki/main.php]] | '' ... \\ tpl_metaheaders() \\ ... '' | Основной скрипт шаблона [[template]] состоит из элементов дизайна HTML , вызывающих методы PHP для такого контента, как метазаголовки, кнопки, элементы навигации и т. д. Все они доступны в файле [[xref>inc/template.php]] | |
| ::: | '' tpl_content() '' | здесь создается настоящая вики-страница | | | ::: | '' tpl_content() '' | здесь создается настоящая вики-страница | |
| [[xref>inc/template.php]] | ::: | ::: | | | :&13:[[wiki:xref:dokuwiki:inc:template.php|inc/template.php]] | ::: | ::: | |
| ::: | '' trigger_event(TPL_ACT_RENDER) '' | вызов [[xref>tpl_content_core()]] с использованием события [[wiki:devel:event:tpl_act_render|TPL_ACT_RENDER]] | | | ::: | '' trigger_event(TPL_ACT_RENDER) '' | вызов [[xref>tpl_content_core()]] с использованием события [[wiki: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(...) '' | который использует [[wiki:devel:caching#two-stage-caching|cached XHTML]] кэшированную версию страницы __ИЛИ__ запускает [[parser|renderer]] для отображения кэшированных инструкций в виде XHTML __ИЛИ__ использует [[parser]] для предварительного преобразования текста вики в инструкции. | | | :&13:[[wiki:xref:dokuwiki:inc:html.php|inc/html.php]] | '' $html = p_wiki_xhtml(...) '' | который использует [[wiki:devel:caching#two-stage-caching|cached XHTML]] кэшированную версию страницы __ИЛИ__ запускает [[parser|renderer]] для отображения кэшированных инструкций в виде XHTML __ИЛИ__ использует [[parser]] для предварительного преобразования текста вики в инструкции. | |
| [[xref>inc/template.php]] | '' trigger_event(TPL_CONTENT_DISPLAY) '' | [[action plugins|у плагинов действия]] есть последний шанс отредактировать необработанный HTML перед выводом с помощью события [[devel:event:tpl_content_display|TPL_CONTENT_DISPLAY]] event | | | :&13:[[wiki:xref:dokuwiki:inc:template.php|inc/template.php]] | '' trigger_event(TPL_CONTENT_DISPLAY) '' | [[action plugins|у плагинов действия]] есть последний шанс отредактировать необработанный HTML перед выводом с помощью события [[devel:event:tpl_content_display|TPL_CONTENT_DISPLAY]] event | |
| [[xref>doku.php]] | '' trigger_event(DOKUWIKI_DONE) '' | завершить вызовом [[action plugins]] подписавшихся на событие [[wiki:devel:event:dokuwiki_done|DOKUWIKI_DONE]] когда основной скрипт шаблона завершен | | | :&13:[[wiki:xref:dokuwiki:doku.php|doku.php]] | '' trigger_event(DOKUWIKI_DONE) '' | завершить вызовом [[action plugins]] подписавшихся на событие [[wiki:devel:event:dokuwiki_done|DOKUWIKI_DONE]] когда основной скрипт шаблона завершен | |
| |
| |