Extension:Interwiki/ru
![]() Статус релиза: стабильно |
|
---|---|
![]() |
|
Реализация | Служебная страница |
Описание | Добавляет служебную страницу для просмотра и управления таблицей интервики |
Автор(ы) | Stephanie Amanda Stevens, SPQRobin |
Последняя версия | 3.2 (2019-07-15) |
MediaWiki | 1.36+ |
Изменения в БД | Нет |
Лицензия | GNU General Public License 2.0 или позднее |
Скачать | |
Пример | See Extension:Interwiki/Sites using this extension |
|
|
interwiki |
|
Quarterly downloads | 140 (Ranked 76th) |
Public wikis using | 5,141 (Ranked 162nd) |
Переведите расширение Interwiki, если оно доступно на translatewiki.net | |
Проблемы | Открытые задачи · Сообщить об ошибке |
The Interwiki extension adds the "Special:Interwiki" page to MediaWiki , to view and edit the interwiki table, and a log of any actions made with it.
Это расширение работает с переменной $wgInterwikiCache . Changes made with it to the interwiki table can affect the behavior of both transclusion and interwiki links .
The list of "Special:Interwiki" is identical to the API api.php?action=query&meta =siteinfo&siprop=interwikimap
, except the iw_api
field is not available.
Загрузка
Расширение можно получить непосредственно из Git [?]:
- Просмотреть код
- Некоторые расширения имеют теги для стабильных выпусков.
- Посмотрите теги
- Выберите тег
- Нажмите "snapshot"
- Каждая ветвь связана с прошлым выпуском MediaWiki. Существует также ветвь "master", содержащая последнюю альфа-версию (может потребоваться альфа-версия MediaWiki).
- Посмотрите ветви
- Выберите название ветви
- Нажмите «Продолжить»
Извлеките snapshot и поместите его в каталог extensions/Interwiki/ вашей MediaWiki.
Если вы знакомы с git и имеете доступ к оболочке на своём сервере, тогда Вы можете получить расширение следующим образом:
cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Interwiki.git
Установка
- Скачайте и распакуйте файл(ы) в папку с названием
Interwiki
в вашей папкеextensions/
. - Добавьте следующий код внизу вашего
LocalSettings.php
:wfLoadExtension( 'Interwiki' ); // To grant sysops permissions to edit interwiki data $wgGroupPermissions['sysop']['interwiki'] = true; // Чтобы создать новую группу пользователей, которая может редактировать данные интервики. // (бюрократы могут добавлять участников в эту группу) # $wgGroupPermissions['developer']['interwiki'] = true; // delete the comment indicator # as appropriate
- Готово – Перейдите на страницу Special:Version на своей вики, чтобы удостовериться в том, что расширение успешно установлено.
- The configuration that comes with MediaWiki will not grant permission to any user group.
- To enable transclusion from other sites, you'll need to enable
$wgEnableScaryTranscluding
.
- To disable adding prefixes through the Special:Interwiki interface, set
$wgInterwikiViewOnly
totrue
.
interwiki
message item defined per locale in SpecialInterwiki.i18n.php
. Its value is Просмотр и изменение настроек интервики.Setting up interlanguage links
To set up interlanguage links using this extension, make sure that $wgInterwikiMagic
is set to true
and $wgHideInterlanguageLinks
is set to false
(they are like this by default, you don't need to change them usually).
Then go to Special:Interwiki as a user with the appropriate permissions.
For example, if the French version of your wiki was located at http://fr.foowiki.tld/wiki/
, you could add http://fr.foowiki.tld/wiki/$1
to the interwiki table with values trans 0 and local 0.
Then the interlanguage link to the French version would work, but a #REDIRECT to a French-language page from a page in some other language would be refused.
See Manual:Interwiki table for a full explanation of the forward (iw_local) and transclude (iw_trans) bits.
In brief:
- Enabling forwarding ('local' true) is normally done between all languages and projects in the same group, as it allows a link to any one of the languages to be used as a gateway to the others. The English-language Wikipedia, for instance, sets the 'local' bit true for all of the other-language Wikipedias and for projects like commons:, wikinews: or wikivoyage:. A user on a wiki outside Wikipedia where the wikipedia: interwiki prefix points to en.wikipedia.org could create a link like wikipedia:fr:Encyclopédie. That link goes initially to "fr:Encyclopédie" on the English-language Wikipedia. The en.wikipedia server immediately recognises fr: as a 'local' interwiki link, so replies with a redirect to la Wikipédia where fr.wikipedia.org/wiki/Encyclopédie displays the requested French-language Wikipédia page [[Encyclopédie]] et voilà.
- Enabling transclusion is rarely done, as it allows an article on one wiki to use templates from some other wiki. This is referred to as 'scary transclusion' as it will cause problems if the other wiki changes the template unexpectedly. A few wiki farms use this to create one 'central wiki' with various templates which are made available to other wikis in the same farm. If you don't need this, don't enable it.
Глобальные интервики
Since version 3, Interwiki supports defining a global/central database and pulling defined interwikis from there as well as from the local table. This functions essentially as a table merge, with local interwiki definitions overriding central. Language links are not pulled from the central table; these are set up as local-only due to a central table likely serving more than one project (with each having its own languages).
The central table is the interwiki table of the central wiki. This means that as far as the central wiki is concerned, it is basically just a normal non-global setup. There are therefore no special rights associated with the central (global) table, though it is likely you may want to be more picky about how you assign the 'interwiki' edit right on this wiki.
- This was decided by looking at current possible use cases (ShoutWiki's hub, Uncyclomedia's central wiki, and Meta-Wiki) where the central wiki isn't going to have anything extra anyway.
- This might change in the future, but anything more intelligent will require schema updates.
- This probably doesn't work with table prefixes because of how the table is accessed.
To set up a central interwiki table, simply provide the name of the database of the wiki you want to use:
// To enable pulling global interwikis from a central database
$wgInterwikiCentralDB = 'mw_central';
Replace 'mw_central' with the name of the database.
For those using table prefixes here is an alternative solution for "pool_example_wiki" tables.
$wgSharedDB = 'example_wiki'; # The $wgDBname for the wiki database holding the main interwiki table
$wgSharedPrefix = 'pool_'; # The $wgDBprefix for the database. Defaults to the prefix of the current wiki if not specified
$wgSharedTables = ['interwiki'];
Protocol-relative URLs
You can use protocol-relative URLs (PRURLs), so that users accessing your wiki over either HTTP or HTTPS can uses that same protocol to access interwiki links.
To use a PRURL, first ensure the destination server supports HTTPS; if it does, then simply remove the https:
portion of the URL in the link table.
For example, change
https://en.wikipedia.org/wiki/$1
to:
//en.wikipedia.org/wiki/$1
Это расширение используется в одном или нескольких проектах Викимедиа. Вероятно, это означает, что расширение стабильно и работает достаточно хорошо, чтобы использоваться такими сайтами с высоким трафиком. Найдите название этого расширения в файлах конфигурации Викимедиа CommonSettings.php и InitialiseSettings.php, чтобы узнать, где оно установлено. Полный список расширений, установленных на конкретной вики, можно увидеть на странице Special:Version wiki. |
Это расширение включено в следующие пакеты и/или вики-фермы: This is not an authoritative list. Some wiki farms/hosts may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |