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

This page is a translated version of the page Manual:Extensions and the translation is 82% complete.

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

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

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

  Теги парсера

Parser tags extend the built-in wiki markup with additional capabilities, whether simple string processing, or full-blown information retrieval.

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

Parser functions are special wiki markup syntax that can 'interact' with other wiki elements in the page, and give a specific output.

  Хуки

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

  Специальные страницы

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

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

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

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

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

  API

MediaWiki provides an action API, a web service that allows access to some wiki-features like authentication, page operations, and search.

  Page content models

The ContentHandler introduced in MediaWiki 1.21 makes it possible for wiki pages to be composed of data other than wikitext, such as JSON or Markdown.

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

MediaWiki provides SessionManager and AuthManager, two authentication-related frameworks to enhance security via custom authentication mechanisms.

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

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

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

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

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

There are a number of ways of finding popular extensions.

The first set is those that are bundled with MediaWiki (a list that is reviewed regularly, and to which anyone can suggested an addition).

Extensions that are downloaded from MediaWiki.org via the ExtensionDistributor mechanism have some statistics gathered. The top 15 most downloaded extensions are listed at Special:ExtensionDistributor, and applicable extensions have their download count shown in their infobox. Note that these numbers do not account for alternate ways of installing extensions, such as via Git or Composer.

A third option is to look at WikiApiary 's counts of wikis that extensions are installed on. This has the advantage of representing actual installations and not just downloads (i.e. it queries the wiki's APIs), but it is also (as of 2023) not completely up to date. It also doesn't count installations on private wikis.

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

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

  1. До начала.
    Многие расширения содержат инструкции по установке с использованием Unix-команд. Вам потребуется доступ в режиме командной строки (SSH) для использования команд и инструкций, содержащихся в руководствах по установке этих дополнений.
  2. Загрузите выбранное расширение.
    Extension Distributor помогает выбрать и скачать большинство популярных расширений.
    Расширения обычно распространяются как модульные пакеты. Обычно они располагаются в собственном подкаталоге каталога $IP /extensions/. Список расширений, находящихся в Git-репозитории Викимедиа, расположен по адресу git:mediawiki/extensions. Некоторые расширения не используют систему контроля версий и не рекомендуются.
    Некоторые расширения также могут быть доступны среди бандлов, в composer или в хранилище пакетов.
    It's recommended to read the README file before installation. It usually contains important info about configuration.
  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' );
  • Вы должны удалить все строки, относящиеся к конфигурации расширения.

Смотрите также