Инструменты пользователя

Инструменты сайта


wiki:plugin:repository

Плагин репозитория расширений

Этот плагин является аналогом менеджера расширений. Он управляет расширениями (плагинами и шаблонами) здесь, на dokuwiki.org, и предоставляет API для менеджера расширений.

(Также доступен плагин, похожий на этот, но с большей гибкостью, предназначенный для использования за пределами dokuwiki.org. Это плагин данных.)

Запись плагинов

Каждый плагин должен иметь домашнюю страницу в plugin пространстве имен, содержащую как минимум краткое описание и блок данных, подобный следующему в начале:

---- plugin ----
description: Just an example to prove the point
author     : Joe Blow
email      : joe@example.com
type       : syntax, action, admin, helper, render
lastupdate : 2007-12-17
compatible : Anteater, 2010-02-14
depends    : plugin1
conflicts  : plugin2
similar    : plugin3
tags       : example, sample

downloadurl: https://github.com/example/dokuwiki-plugin-sample/zipball/master
bugtracker : https://github.com/example/dokuwiki-plugin-sample/issues
sourcerepo : https://github.com/example/dokuwiki-plugin-sample/
donationurl: https://www.paypal.com/...

screenshot_img : http://<someserver>/image.png
----

Информация хранится в базе данных и используется для создания динамического браузера репозитория (см. список плагинов или менеджер расширений в вашей вики)

О полях:

  • description – должно быть кратким описанием того, что делает плагин
  • author – основной автор плагина или текущий сопровождающий
  • email – адрес электронной почты основного автора плагина или текущего сопровождающего
  • type – один или несколько типов плагинов (синтаксис, действие, администрирование, помощник, рендеринг)
  • lastupdate – дата предоставления последней версии плагина в формате ГГГГ-ММ-ДД, используется для автоматической проверки обновлений диспетчером расширений и должна совпадать с датой в plugin.info.txt
  • updatemessage – показывать сообщение, информирующее пользователей об обновлении, отображается в Extension Manager
  • compatible – укажите версию(и) DokuWiki, с которой совместим ваш плагин . Можно указать несколько версий и использовать кодовые имена. Например: 2009-02-14, лемминг, муравьед.
    • Используйте знак «плюс» + если вы считаете, что плагин будет совместим с будущими версиями DokuWiki.
    • Используйте восклицательный знак ! если плагин несовместим с версией DokuWiki (например, «!Greebo»).
  • depends – список зависимостей плагина, разделенный запятыми, если таковые имеются
  • conflicts – список плагинов/шаблонов, разделенных запятыми, которые конфликтуют с вашим плагином, используйте template:xxx если конфликтуют с шаблоном xxx
  • similar – список плагинов, разделенных запятыми, с похожей задачей
  • tags – классифицируйте свой плагин здесь. Если !obsolete это единственный тег, то этот плагин будет скрыт из таблицы репозитория
  • screenshot_imgURL-адрес изображения для характерного снимка экрана плагина/шаблона (также используется в новом менеджере расширений, который масштабирует и обрезает его до изображения размером 120×70 пикселей)
  • securitywarning – используйте это поле, чтобы предупредить о внутренних проблемах безопасности плагина. Возможность выполнения произвольного скрипта может быть причиной (предопределенные значения: informationleak, allowsscript, requirespatch and partlyhidden (объяснение ))
  • securityissue – добавляйте это поле только в случае возникновения проблем с безопасностью плагина. Введите здесь краткое описание и сообщите автору. Плагин будет скрыт из таблицы репозитория
  • downloadurl – это должен быть прямой URL-адрес для загрузки, совместимый с самой последней версией
  • bugtracker – ссылка на багтрекер для этого плагина, оставьте пустым, если таковой отсутствует
  • sourcerepo – ссылка на веб-интерфейс системы управления исходным кодом, например git или darcs, оставьте пустым, если таковая отсутствует
  • donationurl – ссылка на PayPal, список желаний Amazon или что-то подобное, где люди могут сделать вам пожертвование; оставьте пустым, если ничего не доступно

Шаблон записи

Аналогично для шаблонов, но в template пространстве имен.

---- template ----
description   : Just an example to prove the point
author        : Joe Blow
email         : joe@example.com
lastupdate    : 2007-12-17
compatible    : Anteater, 2010-02-14
depends       : 
conflicts     : example, template:sample
similar       : 
tags          : example, sample

downloadurl   : https://github.com/example/dokuwiki-plugin-sample/zipball/master
bugtracker    : https://github.com/example/dokuwiki-plugin-sample/issues
sourcerepo    : https://github.com/example/dokuwiki-plugin-sample/
donationurl   : https://www.paypal.com/...

screenshot_img: http://<someserver>/image.png
----

Информация хранится в базе данных и используется для создания динамического браузера репозитория (см. список шаблонов или менеджер расширений в вашей вики).

About the fields:

  • description – должно быть кратким описанием основной функции шаблона
  • author – основной автор шаблона или текущий сопровождающий
  • email – адрес электронной почты основного автора шаблона или текущего сопровождающего
  • lastupdate – дата предоставления последней версии шаблона в формате ГГГГ-ММ-ДД, она используется для автоматической проверки обновлений диспетчером расширений и должна совпадать с датой в template.info.txt
  • updatemessage – показывать сообщение, информирующее пользователей об обновлении, отображается в Extension Manager
  • compatible – укажите версию(и) DokuWiki, с которой совместим ваш шаблон. Можно указать несколько версий и использовать кодовые имена. Например: 2009-02-14, лемминг, муравьед
  • depends – список зависимостей шаблона, разделенных запятыми, если таковые имеются
  • conflicts – список плагинов/шаблонов, разделенных запятыми, которые конфликтуют с вашим шаблоном, используйте, template:xxx если конфликтуют с шаблоном xxx
  • similar – список шаблонов с похожей задачей, разделенный запятыми
  • screenshot_imgURL-адрес снимка экрана вашего шаблона (также используется в новом менеджере расширений, который масштабирует и обрезает его до изображения размером 120×70 пикселей)
  • tags – классифицируйте свой шаблон здесь. Если !obsolete это единственный тег, то этот шаблон будет скрыт из таблицы репо
  • securitywarning – используйте это поле, чтобы предупредить о проблемах безопасности, присущих шаблону. Возможность выполнения произвольного скрипта может быть причиной
  • securityissue – добавляйте это поле только в случае возникновения проблем с безопасностью шаблона. Введите здесь краткое описание и сообщите автору. Шаблон будет скрыт из таблицы репозитория
  • downloadurl – это должен быть прямой URL-адрес для загрузки, совместимый с самой последней версией
  • bugtracker – ссылка на багтрекер для этого шаблона, оставьте пустым, если таковой отсутствует
  • sourcerepo – ссылка на веб-интерфейс системы управления исходным кодом, например git или darcs, оставьте пустым, если таковая отсутствует
  • donationurl – ссылка на PayPal, список желаний Amazon или что-то подобное, где люди могут сделать вам пожертвование; оставьте пустым, если ничего не доступно

Предупреждение о безопасности: предопределенные сочетания клавиш

Поле предупреждения безопасности позволяет использовать некоторые предопределенные сочетания клавиш. В следующей таблице показаны фактически определенные сочетания клавиш и их значение:

Ярлык Значение
informationleak Это расширение раскрывает информацию, которая может быть ценной для хакера. Не рекомендуется для публичной установки.
allowsscript Это расширение позволит выполнять скрипты. Его следует использовать только тогда, когда вы доверяете ВСЕМ редакторам, лучше всего подходит для личных вики.
requirespatch Это расширение требует исправления ядра DokuWiki. Ручные исправления могут нарушить совместимость с другими расширениями и усложнить защиту вашей установки путем обновления до последней версии.
partlyhidden Скрытие частей страницы DokuWiki не поддерживается ядром. Большинство попыток ввести контроль ACL для частей страницы приведут к утечке информации через RSS-канал, поиск или другие основные функции.

Пример частично скрытого предупреждения безопасности можно посмотреть на странице plugin:ifauth.

Руководство и API плагина репозитория

В руководстве описывается, как использовать различные компоненты плагина на dokuwiki.org.

В документации API описывается , как удаленно запросить информацию о плагине.

Совместимость с релиз-кандидатами

Когда будет доступен новый релиз-кандидат, пожалуйста, обновите домашнюю страницу плагина с соответствующей совместимостью, используйте название релиза (например, «rincewind») вместо даты RC. Таким образом, вам не придется обновлять информацию о совместимости, когда будет готов финальный релиз.

Только авторизованные участники могут оставлять комментарии.
wiki/plugin/repository.txt · Последнее изменение: 2025/02/09 15:11 — vladpolskiy