Ajuda:Como personalizar as barras de ferramentas
| Guia de edição |
|---|

A barra lateral esquerda e a barra de ferramentas pessoal superior podem ser personalizadas editando os arquivos tema.js ou common.js. Edições no arquivo tema.js aplicam-se apenas ao tema atual, enquanto common.js aplica-se a todos os temas.
Visão geral
[editar | editar código]Uso geral:
$.when(mw.loader.using('mediawiki.util'), $.ready).then(function () {
mw.util.addPortletLink('idDoPortlet', 'href', 'texto', 'id', 'dica', 'chaveDeAcesso', 'próximoNode');
});
Onde:
mw.util.addPortletLink: a função ResourceLoader para adicionar links aos portlets.portletId: ID do portlet — a seção onde o novo item de menu será inserido. Valores válidos:p-navigation: Seção de navegação na barra lateral esquerdap-interaction: Seção de interação na barra lateral esquerdap-tb: Seção de ferramentas na barra lateral esquerdap-coll-print_export: Seção de impressão/exportação na barra lateral esquerdap-lang: Seção de idiomas na barra lateral esquerdap-wikibase-otherprojects: Na seção Outros Projetos, na barra lateral esquerda.p-personal: Barra de ferramentas pessoal na parte superior da páginap-views: Abas superiores direitas apenas no Vector (ler, editar, histórico, assistir, etc.)p-cactions: Menu suspenso contendo opções como mover, etc. (no Vector); links de assunto/discussão e links de ação em outras skins.
href: Link para a Wikipédia ou página externatexto: Texto que é exibidoid: ID HTML (opcional)dica: Dica de ferramenta a ser exibida ao passar o mouse (opcional)chaveDeAcesso: Tecla de atalho (opcional)próximoNode: Link do portlet existente antes do qual o novo link do portlet será inserido (opcional)
Os campos opcionais devem ser incluídos na ordem acima. Para ignorar um campo sem alterá-lo, use o valor null.
Href
[editar | editar código]As ligações para páginas da Wikipédia têm o formato "/wiki/nome da página"; exemplo: "/wiki/Especial:Páginas_novas".
As ligações externas são formatadas usando o URL completo; exemplo: 'http://exemplo.org'.
Existem várias variáveis de configuração que podem ser usadas para criar links mais complexos. Uma variável de configuração é lida usando a função mw.config.get(‘nomeDaVariável’):
wgArticlePath: Caminho local, começando na raiz, para referenciar artigos, contendo um espaço reservado "$1" que pode ser substituído pelo título da página para obter um URL válido para essa página.wgPageName: O nome completo da página, incluindo o nome do domínio localizado, se o domínio tiver um nome (o domínio principal (número 0) não tem), e com os espaços em branco substituídos por sublinhados.wgServer: O URL do servidor, não terminado por "/".
Dado um título de página válido, uma URL válida pode ser construída usando mw.config.get('wgArticlePath').replace('$1', título):
mw.config.get('wgServer') + mw.config.get('wgArticlePath').replace("$1", "Especial:Registo/"+ encodeURI(mw.config.get('wgPageName')))
Que, no caso desta página, retornaria:
//pt.wikipedia.org/wiki/Especial:Registo/Ajuda:Como_personalizar_as_barras_de_ferramentas
Onde a ligação é montada pelas seguintes partes:
| Código JS | Trecho da URL |
|---|---|
mw.config.get('wgServer')
|
//pt.wikipedia.org
|
mw.config.get('wgArticlePath')
|
/wiki/$1
|
.replace("$1", "Especial:Registo/...")
|
/wiki/Especial:Registo
|
mw.config.get('wgPageName')
|
Como_personalizar_as_barras_de_ferramentas
|
encodeURI(mw.config.get('wgPageName'))
|
Ajuda:Como_personalizar_as_barras_de_ferramentas
|
No entanto, para ligações locais, pode ser mais aconselhável e simples usar o método mw.util.getUrl (descrição, documentação da API):
mw.util.getUrl('C++') // "/wiki/C%2B%2B"
mw.util.getUrl('C++', { action: 'history' }) // "/w/index.php?title=C%2B%2B&action=history"
Exemplos
[editar | editar código]Adicione o portlet a uma subpágina do usuário na barra de ferramentas à esquerda:
mw.util.addPortletLink ('p-tb', '/wiki/Usuário(a):nomeDeUsuário/nomeDaPágina', 'Nome da minha página');
Adicione o portlet em Especial:Páginas novas na barra de ferramentas à esquerda:
mw.util.addPortletLink ('p-tb', '/wiki/Especial:Páginas_novas', 'Páginas Novas');
Abra a página atual no Checklinks, na barra de ferramentas à esquerda:
mw.util.addPortletLink ('p-tb', 'http://toolserver.org/~dispenser/cgi-bin/webchecklinks.py/' + encodeURI(mw.config.get('wgPageName'))
+ '?client=script&citeweb=on&overwrite=&limit=20&lang=' + mw.config.get('wgContentLanguage'), 'Checklinks');
Abra a página atual em Reflinks na barra de ferramentas à esquerda:
mw.util.addPortletLink ('p-tb', 'http://toolserver.org/~dispenser/cgi-bin/reflinks.py?lang=' + mw.config.get('wgContentLanguage') + '&page=' + encodeURIComponent(mw.config.get('wgPageName')) + '&autoclick=wpPreview', 'Reflinks');
Abra a página em Reflinks, na barra de ferramentas pessoal; formatada em várias linhas:
mw.util.addPortletLink(
'p-personal',
'http://toolserver.org/~dispenser/cgi-bin/reflinks.py?lang=' + mw.config.get('wgContentLanguage') + '&page=' + encodeURIComponent(mw.config.get('wgPageName')) + '&autoclick=wpPreview',
'Reflinks');
Adicione um portlet para abrir as subpáginas do usuário na barra de ferramentas pessoal, posicionado antes do portlet de Preferências:
mw.util.addPortletLink(
'p-personal',
'/wiki/Especial:Índice_por_prefixo/Usuário(a):NomeDeUsuário',
'subpages',
'pt-subpages',
'Suas subpáginas',
null,
'#pt-preferences'
);