Руководство:Расширения

From mediawiki.org
This page is a translated version of the page Manual:Extensions and the translation is 100% complete.

Расширение позволяет Вам настроить внешний вид и работу MediaWiki.

Некоторые расширения поддерживаются разработчиками MediaWiki, другие были написаны независимыми разработчиками. В результате, во многих расширениях содержатся ошибки, и не все из них будут гарантированно совместимы друг с другом. Некоторые никем не поддерживаются; не все расширения заработают во всех версиях MediaWiki. Любые расширения, особенно помеченные как небезопасные, вы используете на свой страх и риск. Если вы используете расширение, которое требует исправлений для основного программного обеспечения, обязательно сделайте резервную копию вашей базы данных. Это помогает избежать риска взлома вашей вики.

Типы расширений

Теги парсера

Теги парсера расширяют встроенную вики-разметку дополнительными возможностями, будь то простая обработка строк или полноценный поиск информации.

Функции парсера

Функции парсера — это специальный синтаксис вики-разметки, который может «взаимодействовать» с другими элементами вики на странице и давать определенный результат.

Хуки

Хуки позволяют выполнять собственный код, при возникновении определенного события (например, сохранение страницы или вход пользователя).

Служебные страницы

Служебные страницы — это страницы, которые были созданы программным обеспечением по запросу, чтобы исполнять особые функции.

Темы оформления

Скины позволяют пользователям настраивать внешний вид MediaWiki.

Волшебные слова

Волшебные слова это техника для соединения разнообразных текстовых цепочек к одному ID которое ассоциируется с этой функцией.

API

MediaWiki предоставляет API действий — веб-сервис, который обеспечивает доступ к некоторым функциям вики, таким как аутентификация, операции со страницами и поиск.

Модели содержимого страницы

ContentHandler введённый в MediaWiki 1.21 позволяет страницам вики быть составлены из данных, кроме викитекста, таких как JSON или Markdown.

Аутентификация

MediaWiki предоставляет SessionManager и AuthManager, две структуры, связанные с аутентификацией, для повышения безопасности через механизмы аутентификации.

Поиск расширений

Обзор расширений

Если вам требуется полный список существующих расширений, просмотрите категорию Категория:Расширения по категории . О том, как установить эти расширения или написать своё собственное, читайте ниже.

Проверка установленных расширений

Расширения для MediaWiki может установить только кто-то с правами администрирования файловой системы на сервере, но кто угодно может проверить, какие расширения установлены на MediaWiki, просмотрев служебную страницу Special:Version. К примеру, в русской Википедии действуют.

Популярные расширения

Есть несколько способов найти популярные расширения.

Первый набор — это те, которые поставляются в комплекте с MediaWiki (список, который регулярно просматривается и к которому каждый может предложить дополнение).

Расширения, скачиваемые с MediaWiki.org через механизм ExtensionDistributor , собирают некоторую статистику. Топ-15 самых загружаемых расширений указаны на Special:ExtensionDistributor, а количество загрузок соответствующих расширений указано в их карточке. Обратите внимание, что эти цифры не учитывают альтернативные способы установки расширений, такие как через Git или Composer.

Третий вариант — посмотреть количество вики-сайтов, на которых установлены расширения, по данным WikiApiary . Преимущество этого метода состоит в том, что он представляет собой фактические установки, а не только загрузки (т. е. он запрашивает API-интерфейсы вики), но он также (по состоянию на 2023 год) не полностью обновлен. Также не учитывается количество инсталляций на частных вики.

Установка расширения

Дополнительные указания, см. также в Руководство:Расширения/Инсталляция и обновление

MediaWiki готова к установке расширений сразу же по завершении её собственной установки. Чтобы установить расширение, выполните следующие шаги:

  1. До начала.
    Многие расширения содержат инструкции по установке с использованием Unix-команд. Вам потребуется доступ в режиме командной строки (SSH) для использования команд и инструкций, содержащихся в руководствах по установке этих дополнений.
  2. Загрузите выбранное расширение.
    Extension Distributor помогает выбрать и скачать большинство популярных расширений.
    Расширения обычно распространяются как модульные пакеты. Обычно они располагаются в собственном подкаталоге каталога $IP /extensions/. Список расширений, находящихся в Git-репозитории Викимедиа, расположен по адресу git:mediawiki/extensions. Некоторые расширения не используют систему контроля версий и не рекомендуются.
    Некоторые расширения также могут быть доступны среди бандлов, в composer или в хранилище пакетов.
    Перед установкой рекомендуется прочитать файл README. Обычно в нём содержатся важные сведения о конфигурации.
  3. Установите выбранное расширение..
    В конце файла LocalSettings.php добавьте:
    wfLoadExtension( 'ExtensionName' );
    
    Эта строка вынуждает интерпретатор PHP прочесть файл расширения, и таким образом сделать его доступным для MediaWiki.
    Некоторые расширения могут конфликтовать с внутренними скриптами, в случае, если они, например, работают напрямую с переменной $_SERVER (не рекомендовано).
    В этом случае они могут быть обёрнуты при условии, что сценарии обслуживания могут продолжить работу.
    if ( !$wgCommandLineMode ) {
       wfLoadExtension ( 'ExtensionName' );
    }
    
    Скрипт обслуживания importDump.php «упадёт» для любого расширения, требующего кастомизированных пространств имён, которые включены в условия выше, такие как Расширение:Semantic MediaWiki , Расширение:Page Forms .
Убедитесь, что для расширения настроены необходимые разрешения!
Описанная выше процедура установки достаточна для большинства расширений, однако некоторые требуют другой процедуры установки. Посмотрите документацию расширения для дополнительных подробностей.
Если вы хотите изменить переменные конфигурации в LocalSettings.php, вам нужно это сделать как правило после того места, где включается расширение. В противном случае значения определенные по умолчанию в расширение затрут ваши настройки.

Обновление расширения

Некоторые расширения требуют обновления всякий раз, когда вы обновляете MediaWiki, в то время как другие работают с несколькими версиями. Чтобы обновить новую версию расширения нужно:

  1. Загрузить новую версию расширения
  2. Замените все файлы расширений в каталоге extensions/ExtensionName новыми файлами. Не удаляйте конфигурацию расширения, представленную в LocalSettings.php
  3. Если расширение требует внести правки в базу данных MediaWiki, вам потребуется запустить сценарий обслуживания update.php . В большинстве расширений будет указано, нужно ли запускать этот скрипт или нет. (Выполните резервное копирование ваших данных перед выполнением сценария). Если у вас нет доступа к командной строке, вы также можете использовать web updater.
Эти инструкции охватывают 99% расширений. Если конкретное расширение, которое вы обновляете, имеет инструкции, которые отличаются от этих, вы, вероятно, должны следовать инструкциям конкретного расширения

Удаление расширения

Удалите строку из LocalSettings.php с именем расширения, чтобы удалить его:

wfLoadExtension( 'ExtensionName' );
  • Вы должны удалить все строки, относящиеся к конфигурации расширения.

См. также