Manual:Interwiki

This page is a translated version of the page Manual:Interwiki and the translation is 55% complete.
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎polski • ‎português • ‎română • ‎suomi • ‎čeština • ‎русский • ‎ไทย • ‎中文 • ‎日本語 • ‎한국어

Hiperligações interwiki são hiperligações para as páginas de outros projetos, utilizando um prefixo de estilo de hiperligação interna.

As hiperligações Interwiki tornam possível interligar as páginas da Wikipédia, Wikilivros, Wikinotícias, etc..., ou para o seu próprio projeto wiki em diferentes idiomas. (Consulte Manual:Família de Wikis .)

Uma hiperligação como [[Wikipedia:Main Page]] irá aparecer como isto: Wikipedia:Main Page e redireciona-o para a 'Página Principal' da Wikipédia.

Hiperligações Interwiki para outros projetos

Tabela e API de consulta

As hiperligações interwiki estão alojadas na tabela interwiki da base de dados do MediaWiki. Pode obter a lista de interwikis da propriedade interwikimap da API de consulta dos metadados de siteinfo , em outras palavras, criando um pedido de API, tal como api.php?action=query&meta=siteinfo&siprop=interwikimap

Predefinição

Vários projetos do Wikimedia (e outras wiki) estão preparadas por padrão para a associação com a interwiki, podendo utilizá-los sem necessidade de editar a sua base de dados.

A seguir, tem alguns exemplos de prefixos de interwiki disponíveis (também disponível na Wikipédia, versão 1.10 e superior):

prefixo URL de destino exemplo de utilização
commons https://commons.wikimedia.org/wiki/ [[commons:MediaWiki]]
mediazilla http://bugzilla.wikimedia.org/ [[mediazilla:1209]]
meta https://meta.wikimedia.org/wiki/ [[meta:Main Page]]

A lista completa de prefixos padrões da interwiki está disponível em maintenance/interwiki.list

Consulte m:Ajuda:Associar Interwiki para informação completa sobre como interligar os projetos da Wikimedia.

Em algumas instalações, estes não vêm pré-instalados. Neste caso, tente [[metawikipedia:Main Page|metawikipedia:Página Principal]]

Adicionar um novo site da Web para interligação de interwiki

  • As hiperligações de interwiki são definidas na tabela da base de dados da interwiki.
  • Para modificar estas, terá de editar a base de dados, veja o guia abaixo.

Para facilitar o processo, é recomendado que utilize a extensão "interwiki".

As Wikipedia isn't set up by default prior to version 1.10, you might want to add it (and other projects that you desire).

The examples below show how to set up w: as a link to the English Wikipedia.

The idea is to insert a line of the form:

('prefix', 'URL format string', 1, 0)

into the interwiki table.

Uma linha

Os utilizadores avançados podem utilizar uma única linha de comando, como se segue:

  • MySQL e PostgreSQL
MediaWiki versions: 1.10 – 1.16
INSERT INTO interwiki (iw_prefix, iw_url, iw_local, iw_trans) VALUES ('w', 'https://en.wikipedia.org/wiki/$1', 1, 0);

As versões mais recentes do MediaWiki requerem alguns campos extra, tal como iw_wikiid.

Exportar, adicionar, reimportar

Alternatively, you can use the following multi-step process, which exports the interwiki table, adds a line, then re-imports it:

  • Exportar a tabela da base de dados da interwiki
  • add to the end of the table a line of the following form (using English wikipedia as an example):
('w', 'https://en.wikipedia.org/wiki/$1', 1, 0);
In the above code, the semicolon ';' as seen, MUST be at the end of the table. At the end of any other line within that table Only has ','.
  • Import the database table interwiki

Para testar

Para testar a configuração:

  • Vá para o seu site,
  • crie um artigo, com o seguinte conteúdo:
    [[w:Wikipedia:Village pump|]]
  • This should display a link to the 'Village pump' page on en.Wikipedia.org (the url https://en.wikipedia.org/wiki/Wikipedia:Village_pump)

Documentação de campo

In detail, the fields of the interwiki database table are as follows:

  • iw_prefix: choose a prefix, which is used for interwiki linking, e.g. "wikipedia" for linking to Wikipedia.
    Prefixes must be all lower-case.
  • iw_url: enter the project's URL, e.g. https://en.wikipedia.org/wiki/$1 for Wikipedia. Don't forget the $1 as it is replaced with the article's name you are linking to ([[Wikipedia:Main Page]] links to https://en.wikipedia.org/wiki/Main_Page).
    If iw_url is a binary BLOB field (SVN version, but also occurs in version 1.11.0, bug?) this won't work directly. You have to enter it as binary. There are two possible solutions: 1. You save the url in a plain text file, then import it through phpmyadmin. 2. You can directly enter an SQL query.
  • iw_local: if 1, your wiki will redirect even external links of the form iw_prefix:title, not only those from its own pages; you need this if you want to use the redirect functionality from outside your wiki or other wikis use your transwiki functions for nested transwiki links (like w:en:fr:Wikipédia:Accueil). Consulte Ajuda:Associar interwiki#Interwikis não local. Requer um protocolo para ser especificado em iw_url.
  • iw_trans: "transwiki transclusion" - set to 1 if you want to use pages from the other wiki as templates. You will also need to set $wgEnableScaryTranscluding = true in your LocalSettings.php. Requires a protocol to be specified in iw_url.
  • iw_api: URL to the MediaWiki API, e.g. https://en.wikipedia.org/w/api.php (optional).
  • iw_wikiid: Database name of the wiki (If locally accessible). May be used (later?) for interwiki transclusions. (optional)

  Dica para administradores: Several help pages link to MediaWiki.org's Manual namespace. To make these links work on your local wiki, add an interwiki link with iw_prefix=manual and iw_url=http://www.mediawiki.org/wiki/Manual:$1

  Dica para administradores: $wgTranscludeCacheExpiry in your LocalSettings.php should be set if changes in the transcluded wiki are done. Alternatively, you can flush the table transcache on your local wiki.

Hiperligações de interwiki para outros idiomas

 
Hiperligações de interwiki para outros idiomas

If you have installed a Wiki family , you can link from an article in English to an article in German (if you have a German project, too). You can set up MediaWiki to show those links in the sidebar, just below the toolbox.

In your filesystem, there is a subfolder of your MediaWiki installation, called "languages". Go there and have a look at "Names.php " as it contains a list of known languages and their prefixes. E.g. you want to add your German project, search "Names.php" for "Deutsch" and note the prefix "de".

If you know the "right" prefix, edit your database by adding a new line to table interwiki:

  • iw_prefix: prefixo de idioma (language-prefix, por exemplo "de" para alemão), este é listado em "Names.php"
  • iw_url: URL para o seu projeto wiki (por exemplo, nowiki>http://de.example.org/index.php/$1</nowiki>)
  • iw_local: igual ao de cima "Adicionar Mais"
  • iw_trans: igual ao de cima "Adicionar Mais"

Agora, pode interligar um artigo ao mesmo em outros idiomas. Adicionando [[de:Hauptseite]] na página principal em inglês (Main_Page), irá criar o link "Deutsch" abaixo da caixa de ferramentas, que leva à página principal do wiki alemão

Note, that this link is shown in Sidebar's section, only, and not inside of the article. If you want to create a link inside of the text, you have to add a colon previous to the prefix: [[:de:Hauptseite]] or set $wgInterwikiMagic to false.

Exportar a tabela da interwiki a partir da wiki

The following JavaScript code performs the API query to retrieve the interwiki map of an existing wiki, then displays the SQL INSERT statements to fill the interwiki table on a new wiki. You run it for example by injecting the code through your browser's developer tools, or by placing it inside Special:MyPage/skinname.js and previewing.

function ExtractInterwikiMapTable() {
	$.getJSON(mw.config.get('wgScriptPath') + '/api.php?action=query&meta=siteinfo&siprop=interwikimap&format=json', function(data) {
		var iw_prefix, iw_url, iw_local, iw_api, re_escape = /(')/g, result = '';
		for (var i = 0, iwm = data.query.interwikimap; i < iwm.length; i++) {
			iw_prefix = "'" + iwm[i].prefix.replace(re_escape, '\\$1') + "'";
			iw_url = "'" + iwm[i].url.replace(re_escape, '\\$1') + "'";
			iw_local = (typeof iwm[i].local == 'string') ? '1' : '0';
			iw_api = "'" + (iwm[i].iw_api || '').replace(re_escape, '\\$1') + "'";
			result += 'INSERT INTO interwiki (iw_prefix, iw_url, iw_local, iw_trans, iw_api) VALUES ('+iw_prefix+', '+iw_url+', '+iw_local+', 0, '+iw_api+');\n'
		}
		$('<textarea style="width:800px;height:400px;"/>').val(result).appendTo(document.body);
	});
}

$(ExtractInterwikiMapTable);

Consulte também

Referências