====== Структура файлов плагина ====== Существует две структуры для файлов класса плагина DokuWiki. Выбор структуры определяет имя класса(-ов) плагина. - ''/lib/plugins//.php'' \\ Имя класса плагина будет ''_plugin_'' т.е. файл класс /lib/plugins/acl/admin.php => admin_plugin_acl \\ - ''/lib/plugins///.php'' \\ Эта структура допускает несколько классов одного типа в одном плагине, имена классов будут ''_plugin__'', т.е. файл тип класс /lib/plugins/code/syntax/code.php => syntax_plugin_code_code /lib/plugins/code/syntax/file.php => syntax_plugin_code_file \\ Заметьте, что _ (подчерк) это зарезервированный символ, и не может использоваться имени плагина ''''. Плагин может содержать как несколько типов плагинов, так и несколько классов плагинов каждого типа. //?Кроме того, плагин может (опционально) использовать другие встроенные ?// In addition, a plugin can (optionally) take advantage of other built-in facilities to have its styles, JavaScript, localisation, and configuration included in DokuWiki. Все пути и файлы -- относительны к корневой директории плагина. * ''/lib/plugins//'' * ''style.css'' -- стили [[CSS]] для плагина * ''script.js'' -- [[JavaScript]] используемые плагином * ''lang//lang.php'' -- Английские языковые строки (доступные через ''$this->getLang()'') * ''lang//settings.php'' -- локализованные строки, используемые в [[ru:plugin:config|Менеджере конфигурации]] * ''lang//.txt'' -- локализованный текст включая разметку DokuWiki (доступен через ''$this->locale_xhml()'') * ''conf/default.php'' -- [[configuration#default settings|настройки по умолчанию]] (доступные через ''$this->getConf()'', локальные настройки добавляются к глобальному файлу DokuWiki ''/conf/local.php'') * ''conf/metadata.php'' -- [[configuration#configuration metadata|Метаданные настроек]] описывающие настройки для использования в [[ru:plugin:config|Менеджере конфигурации]] ===== Как включить более чем один файл JavaScript ===== [[ru:DokuWiki]] поддерживает специальный [[ru:devel:javascript#include syntax|синтаксис include]], который можно использовать для //включения// в файл JavaScript других файлов. ===== Как включить более чем один файл CSS ===== Все CSS должны быть сведены в один файл. ===== Выключение плагина ===== Плагин может быть установлен, но выключен. Признаком того, что плагин выключен, служит файл нулевой длинны ''disabled'' в директории плагина. Признаком того, что плагин выключен, служит суффикс ''.disabled'' добавленный к имени директории. Безопасный метод получить имя директории плагина -- использовать функцию ''plugin_directory()'' [[xref>inc/pluginutils.php#plugin_directory]].