Extension:CategoryTree/pt-br
CategoryTree Estado da versão: estável |
|
---|---|
Implementação | Marcação , Função de análise sintática , Página especial |
Descrição | Fornece uma visão dinâmica da estrutura das categorias do wiki como uma árvore. |
Autor(es) | Daniel Kinzler (Duesentriebdiscussão) |
Última versão | atualizações contínuas |
Política de compatibilidade |
Snapshots releases along with MediaWiki. Master is not backward compatible. |
MediaWiki | 1.25+ |
Licença | GNU GPL (Licença Pública Geral) 2.0 ou superior |
Download | README |
|
|
Quarterly downloads | 288 (Ranked 12th) |
Public wikis using | 10,554 (Ranked 11th) |
Para traduzir a extensão CategoryTree, verifique sua disponibilidade no translatewiki.net | |
Problemas | Tarefas em aberto · Relatar um bug |
A extensão CategoryTree (árvore de categorias) fornece uma visão dinâmica da estrutura de categorias do wiki como uma árvore. Ela usa AJAX para carregar as partes da árvore na demanda. CategoryTree foi originalmente escrito por Daniel Kinzler como uma ferramenta externa. Mais tarde, foi integrado no software MediaWiki, com a ajuda de Tim Starling.
Instalação
- Baixe e coloque o(s) arquivo(s) num diretório chamado
CategoryTree
na sua pastaextensions/
.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CategoryTree - Adicione o seguinte código ao final do seu arquivo LocalSettings.php :
wfLoadExtension( 'CategoryTree' );
- Concluído – Navegue à página Special:Version em sua wiki para verificar se a instalação da extensão foi bem sucedida.
Uso
CategoryTree pode ser usado de três maneiras:
- Diretamente nas páginas da categoria,
- Como uma marca "customizada" (ou "função parser") para mostrar uma estrutura de categorias em uma linha numa página do wiki,
- E como uma página especial.
- directly on the category pages,
- as a "custom tag" (or "parser function") to show a category structure in-line on a wiki page,
- and as a special page.
A extensão CategoryTree adiciona o widgets ► "expandir" para subcategorias listadas nas páginas da categoria.
A marca <categorytree>
Example. The result can be seen in the box below and on the right:
<categorytree mode="pages">Manual</categorytree>
A marca personalizado é chamada <categorytree>. Por exemplo, se você colocar <categorytree>Foo</categorytree> em uma página no wiki, irá mostrar o conteúdo da categoria "Exemplo" como uma árvore dinâmica da página (ver exemplo à direita). A marca aceita os seguintes atributos, usando uma sintaxe do tipo HTML:
- mode
- Determina quais páginas são mostradas na árvore. Isto pode ser substituído pelo uso da opção
namespaces
. Valores possíveis:- categories
- Mostra apenas as subcategorias (configuração constante
0
). - pages
- mostrar subcategorias e páginas, exceto imagens (constante de configuração
10
), limitado a 200 páginas - all
- Mostra todas as páginas, subcategorias, imagens, etc (configuração constante
20
). - parents
- Lista de categorias-mãe, em vez de subcategorias (configuração constante
100
). Isso coloca CategoryTree em operação "inversa" (suportado desde r36892, julho de 2008).
- depth
- Determina quantos níveis da árvore são exibidos inicialmente. O padrão é 1.0, significa que mostra apenas a raiz. O valor máximo depende do modo especificado e sobre a opção
$wgCategoryTreeMaxDepth
(introduzido entre r20410 e r20840, 30 de março de 2007, totalmente funcional com$wgCategoryTreeDynamicTag
desde r36864, julho de 2008). onlyrootDefina isto para "on" para mostrar apenas a "raiz" da árvore inicialmente. Equivalente aObsoleto em r36864, julho de 2008, usedepth="0"
(introduzido em r20385, 13 de março de 2007).depth="0"
em vez disso.- hideroot
- Definir isto para "on" para esconder a "raiz" da árvore, ou seja,
hideroot=on
. Por exemplo, ele não irá exibir o nome "Exemplo" da categoria. - hideprefix
- Determina quando o prefixo namespace deve ser escondido nas entradas da árvore (desde r36864, julho de 2008). Os valores possíveis são:
- always
- Sempre esconde o prefixo. Deve ser usado somente se todas as páginas vêm do mesmo namespace (configuração constante
10
). - never
- Nunca esconde o prefixo, nem mesmo para as categorias (configuração constante
0
). - auto
- Oculta o espaço das categorias, se somente as categorias são apresentadas, assim como no
mode="categories"
(configuração constante30
); Isto é equivalente ao comportamento padrão antigo (antes de junho de 2008). - categories
- Sempre esconde o espaço das categorias, mas mostra todos os outros prefixos (configuração constante
20
). Este é o novo comportamento padrão (desde r36864, julho de 2008).
- showcount
- Definir isto para "on" para mostrar o número de entradas em subcategorias, ou seja,
showcount="on"
(Desde r36864, julho de 2008). Esta é desativado por padrão para árvores de categorias alinhadas nas páginas, mas ativado por padrão em uma categoria listada em Special:CategoryTree. This is disabled per default for category trees inlined on pages, but enabled per default in category listings and on Special:CategoryTree. - notranslations
- set this to "on" to hide all translations pages corresponding to the pages pertaining to the category, i.e.
notranslations="on"
(since Gerrit change 526234, November 2019). This is disabled by default. If this option is set to "on", instead of the different translations (e.g. Page, Page/en, Page/fr, Page/de) only the standard translation "Page" is displayed and all translations are suppressed.This doesn't affect "showcount", so still a bug. - namespaces
- Uma lista de namespace que devem ser incluídas na árvore (desde r36864, julho de 2008). As entradas na lista devem ser nomes de namespace, separados por espaços. Os namespaces principais podem ser representado pelo "-" ou "0".
class, style, id, etc: A marca HTML <categorytree> suporta todos os atributos padrão para os elementos do bloco (desde r36864, julho de 2008. Antes disso, apenas style
foi suportado).
Notes on the 'namespaces' parameter
Category is a namespace. Categories are shown in all modes by default, but specifying the namespaces
parameter hides them just like any other namespace not present on the list. If you want to list pages in a given namespace, including pages in subcategories, simply add Category to the namespace list.
Example:
- Listing main namespace pages in Category:Manual:
<categorytree mode="pages" namespaces="Main">Manual</categorytree>
- Listing main namespace pages and subcategories in Category:Manual:
<categorytree mode="pages" namespaces="Main Category">Manual</categorytree>
The mode
parameter is overridden by namespaces
:
- if only Category namespace is asked, it's equivalent to
mode=categories
; - if file namespace is present on the list, it will imply
mode=all
; - otherwise
mode=pages
will be used. It means that if the site configuration hasn't been changed, the following are equivalent (the first two are always equivalent, the third only if$wgCategoryTreeDefaultMode
is the defaultCategoryTreeMode::CATEGORIES
):
<categorytree mode="categories">Manual</categorytree>
<categorytree namespaces="Category">Manual</categorytree>
<categorytree>Manual</categorytree>
A função parser {{#categorytree}}
Desde r25825 (2007/09/13), você também pode usar a função parser sintaxe para colocar uma árvore de categoria em uma página. Isto funciona como a marca <categorytree>, utilizando uma sintaxe diferente, por exemplo, {{#categorytree:Foo}}
; Opções podem ser especificadas usando a sintaxe com parâmetros para predefinições, por exemplo, {{#categorytree:Foo|hideroot|mode=pages}}
.
Usando a sintaxe função parser tem a vantagem que permite a utilização de palavras mágicas, predefinições e parâmetros de predefinições quando especificam a exibição da categoria. Alguns exemplos:
- Usando uma palavra mágica variável para mostrar "esta páginas" na árvore de categorias (pode ser útil em páginas de descrição da categoria):
{{#categorytree:{{PAGENAME}}}}
.
- Usando uma predefinição para especificar a categoria:
{{#categorytree:{{root category}}}}
- O nome da raiz da árvore de categorias seria definido pelo conteúdo da Template:Root_category. - Usando um parâmetro de predefinição para especificar a categoria, quando se utiliza CategoryTree dentro de uma predefinição:
{{#categorytree:{{{1}}}}}
na Template:Baz pode ser incorporado usando {{Baz|Foo}}.
A página Special:CategoryTree
A página especial é chamado Special:CategoryTree (Especial:Árvore de categorias em uma wiki em português), lá você pode digitar o nome de uma categoria e depois procurar o seu conteúdo.
Configuração
Existem algumas opções que você pode especificar no seu arquivo LocalSettings.php .
0
for category mode, 10
for pages, 20
for all, 100
for parents.- $wgCategoryTreeMaxChildren
- Número máximo de categorias mostradas na raiz da árvore. O padrão é 200.
- $wgCategoryTreeAllowTag
- Ativa a marca <categorytree>. O pradão é true (verdadeiro).
- $wgCategoryTreeDynamicTag
- Carrega o primeiro nível da árvore em <categorytree> dinamicamente. Desta forma, o cache não precisa ser desativado. O padrão é false (falso).
- $wgCategoryTreeDisableCache
- desativa o cache do analisador para páginas com uma tag <categorytree> ou fornece o tempo máximo de cache em segundos. O padrão é 21600, que é 6 horas.
- $wgCategoryTreeUseCache
- Ativa o cache HTTP para os usuários anônimos. O padrão é false.
$wgCategoryTreeOmitNamespaceNão mostra o nome do namespace para páginas de categorias. O padrão é false, namespaces são mostradas somente se as categorias não são mostradas.Obsoleto em r36864, julho de 2008: use$wgCategoryTreeDefaultOptions['hideprefix']
em vez disso.- $wgCategoryTreeMaxDepth
- Uma matriz que define a profundidade máxima para cada "mode", para que a árvore possa ser expandida usando inicialmente o parâmetro depth em uma marca <category>. Por padrão, esta é definida como 2 para "categories mode" e 1 para outros "modes". Para configurá-lo para 3 categories e 2 para os outros modes, por exemplo, você pode usar
$wgCategoryTreeMaxDepth = [10 => 2, 20 => 2, 0 => 3, 100 => 2];
. - $wgCategoryTreeDefaultMode
O mode padrão ao usar o mode sem nenhum atributo é especificado em uma marca <categorytree>.Pode ser0
(o padrão - categorias),10
(páginas) ou20
(tudo).$wgCategoryTreeCategoryPageModeO mode para usar quando as árvores de renderização de páginas da categoria.Obsoleto em r36864, julho de 2008: use$wgCategoryTreeCategoryPageOptions['mode']
em vez disso.- $wgCategoryTreeSidebarRoot
- A raiz da categoria pode ser usada para integrar a árvore de categorias na barra lateral (desde r36920, julho de 2008). Se não for definido, nenhuma árvore é integrada (esse é o padrão). Integrar uma árvore de categorias na barra lateral só funciona com temas baseados em SkinTemplate, isto é, Moderno, MonoBook, Chick, Simple e MySkin, mas não Standard, Nostalgia ou CologneBlue. This is currently broken for MediaWiki 1.35.1 and the vector skin, see phab:278306.
- $wgCategoryTreeDefaultOptions
- opções padrão para aplicar, como uma matriz (desde r36864, julho de 2008). As opções disponíveis são descritas acima. Exemplo:
$wgCategoryTreeDefaultOptions['mode'] = 'pages';
. - $wgCategoryTreeCategoryPageOptions
- Opções para utilizar em páginas de categorias, como um array (desde r36864, julho de 2008).
- $wgCategoryTreeSpecialPageOptions
- Opções para usar em Special:CategoryTree, como um array (desde r36864, Julho de 2008).
- $wgCategoryTreeSidebarOptions
- Opções para utilizar na hora de mostrar a árvore na barra lateral, como um array (desde r36920, julho de 2008).
As mensagens do sistema
categorytree-member-num
Por padrão, quando há uma lista de subcategorias em uma página de categoria, cada categoria é seguida por um número inteiro, indicando a quantidade de subcategorias que se encontram abaixo:
- Meu nome de categoria (5 C, 2 P, 1 F)
Você pode alterar esse comportamento, substituindo a mensagem de sistema MediaWiki:Categorytree-member-num. Leva cinco parâmetros:
Parâmetro | Significado |
---|---|
$1 | Número de subcategorias |
$2 | Número de artigos (não incluindo páginas da categorias ou arquivos) |
$3 | Número de arquivos carregados |
$4 | Número total de páginas membros, incluindo páginas de categorias e de arquivos |
$5 | Something close to ($1 C, $2 P, $3 F) but with anything that is 0 omitted.
More precisely, a comma separated list of the number of pages (mediawiki:categorytree-num-pages), subcategories (mediawiki:categorytree-num-categories), and files (mediawiki:categorytree-num-files) in the category, or empty (mediawiki:categorytree-num-empty) in the case the category has no members. In versions prior to those around 1.19 this value was different. See older version of these docs. |
O valor padrão é (($5)
).
Dica: Use a extensão ParserFunctions para fornecer if/then/else logic
para mostrar diferentes partes condicionalmente. Por exemplo:
{{#ifeq:$1|0||$1 categories}}
A configuração para gerir espaços e vírgulas quando emitir todas as informações:
Abbreviation version:
({{#ifeq:$4|0|empty|{{#ifeq:$1|0||$1 C{{#ifeq:{{#expr:$3+$2}}|0||,}}}} {{#ifeq:$2|0||$2 P{{#ifeq:$3|0||,}}}} {{#ifeq:$3|0||$3 F}}}})
Full name version:
({{#ifeq:$4|0|empty|{{#ifeq:$1|0||$1 categories{{#ifeq:{{#expr:$3+$2}}|0||,}}}} {{#ifeq:$2|0||$2 pages{{#ifeq:$3|0||,}}}} {{#ifeq:$3|0||$3 files}}}})
Solução de problemas
Wiki não funciona após a instalação do CategoryTree
- Usar o relatório de erros
- Certifique-se de que todos os arquivos foram instalados.
- Certifique-se de que todos os arquivos de extensão CategoryTree ter mode 644 e o diretório CategoryTree tem mode 755.
Opções em LocalSettings.php não têm nenhum efeito
- Certifique-se de especificar as opções depois de incluir a extensão.
<span id="Clicking_the_►_has_no_effect,_gives_a_JavaScript_error_or_just_sits_on_loading">
Clicando no ► não tem nenhum efeito, dá um erro de JavaScript ou apenas fica carregando
- Note que o uso da marca <categorytree> em mensagens do sistema (namespace MediaWiki) pode não funcionar como esperado - isto é uma advertência conhecida. Para uma solução, ver Usando CategoryTree na barra lateral abaixo.
- Certifique-se de que há
$wgUseAjax = true;
em seu LocalSettings.php antes de incluir a extensão.
- Certifique-se de que está usando o versão mais recente da extensão - a última palavra está em git:mediawiki/extensions/CategoryTree
- Se você estiver usando as regras de reescrita padronizadora (por exemplo, de ter "URLs muito curtas" - ou seja, páginas de wiki na raiz do documento), certifique-se de que tem uma exceção no local do diretório /extensions, assim como você faria no diretório /skins. Veja também abaixo.
Clicking the ► shows no sub-categories error
- Try to fix this by adding this code to LocalSettings.php:
$wgCategoryTreeDefaultOptions['namespaces'] = [ 0, NS_CATEGORY, NS_FILE ];
O navegador relata um tipo de MIME ruim para CategoryTree.js e/ou CategoryTree.css
- Verifique se o seu servidor usa os tipos de MIME correto, .js e .css.
- Digite a URL diretamente no navegador e veja se ela está cumprindo as páginas ao todo, e não uma página de erro, especialmente:
- Se você estiver usando regras de reescrita padronizada (por exemplo, de ter "URLs muito curtas" - ou seja, páginas de wiki na raiz do documento), certifique-se de que tem uma exceção no local do diretório extensions/, assim como você faria no diretório skins/.
<span id="Member_counts_are_wrong,_grey_arrows_►_are_shown_instead_of_►">
Contagem de membros está errado, ► é mostrado em vez de ►
Desde MediaWiki 1.13, CategoryTree pode mostrar um número de membros de uma categoria, e pode mostrar um ► para raiz de árvores que não tem subcategorias com base nesse número. Esta informação é baseada na nova category . No entanto, preencher a tabela com os valores atuais, nem sempre funciona, quando atualizar para o 1.13. Nesse caso, execute o script populateCategory.php
de manutenção, se necessário com a opção --force
.
<span id="► ► ▼_toggles_shown_only_on_the_first_level_of_the_category_tree_view">
Sinais ► ► ▼ mostrados apenas no primeiro nível da categoria de exibição de árvores
No caso de você ter apenas um nível depth, enquanto visualizar a árvore, tente definir no arquivo modules/ext.categoryTree.styles.css a linha display: none;
para display: inline !important;
:
O javascript destina-se a mudar o estilo da marca de alguma forma. Verificar mais tarde.
Nota para os usuários robôs
Robôs e scripts que analisam o código HTML de páginas de categorias podem utilizar o parâmetro URL notree para forçar a saída do tradicional. No entanto, a saída HTML, geralmente não é estável, por isso é recomendado alterar o seu script para usar o API para buscar lista de categorias e similares.
Mensagem "Categoria não encontrada"
Depois de aplicar o plugin CategoryTree e adicionar o código para mostrar a árvore, se você ver uma mensagem que diz: Categoria não encontrada, você precisa adicionar algum conteúdo em suas páginas de categoria. As páginas de categoria não podem ser páginas vermelhas, basicamente. Clique nos nomes de sua categoria, adicione algum texto na página da categoria, e, em seguida, a árvore deve funcionar bem.
Next 200 links do not work with CategoryTree installed
Make sure the right version of this extension is installed, relative to the version of MediaWiki you have installed. In particular, versions of this extension made for versions of MediaWiki prior to 1.17 are not compatible with MediaWiki 1.17 and greater, and will cause issues where all the paging links on category pages are broken.
No pages are shown when using the "namespaces" parameter
See above.
Hacks
Usando CategoryTree em mensagens do sistema e temas personalizados
Em versões mais antigas do CategoryTree, você tem que modificar o código para fazer este trabalho: encontre a função efCategoryTreeParserOutput
no arquivo CategoryTree.php e remova a condição, ou seja, ele deve ter esta aparência:
function efCategoryTreeParserOutput( &$outputPage, &$parserOutput ) {
CategoryTree::setHeaders( $outputPage );
return true;
}
Usando CategoryTree na barra lateral
Using JavaScript
Desde r36920 (julho 2008) com o MediaWiki 1.13 (r36917), você pode integrar CategoryTree na barra lateral simplesmente ajustando $wgCategoryTreeSidebarRoot
para a categoria que você deseja usar como raiz. Isso só funciona com temas baseados em SkinTemplate no entanto, que é Moderno, MonoBook, Chick, Simples e MySkin, mas não Standard, Nostalgia ou CologneBlue.
Se quiser o CategoryTree em uma posição diferente na barra lateral, você pode fazer isso colocaando ele em [[MediaWiki:Sidebar]]
como "categorytree-portlet".
Para versões anteriores do CategoryTree e/ou MediaWiki, você precisará instalar um mod em MonoBook.php para permitir o wikitext normal na barra lateral. Veja Wikitexto na barra lateral --DJ 19:26, 24 January 2008 (UTC)
Para acrescentar um link "CategoryTree" à sua barra de ferramentas (sidebar ), adicione o seguinte código para a página de javascript (por exemplo, monobook.js) do seu tema e personalizar o URL "w:Special:CategoryTree".
function AppendCategoryTreeToSidebar() {
try {
var node = document.getElementById( "p-tb" )
.getElementsByTagName('div')[0]
.getElementsByTagName('ul')[0];
var aNode = document.createElement( 'a' );
var liNode = document.createElement( 'li' );
aNode.appendChild( document.createTextNode( 'CategoryTree' ) );
aNode.setAttribute( 'href' , '[[w:Special:CategoryTree]]' );
liNode.appendChild( aNode );
liNode.className = 'plainlinks';
node.appendChild( liNode );
} catch(e) {
// lets just ignore what's happened
return;
}
}
addOnloadHook( AppendCategoryTreeToSidebar );
Uma versão mais genérica deste código pode ser encontrada em Manual:Interface/Barra lateral#conteúdo da barra lateral e caixa de ferramentas (javascript) .
Step by step if works easy:
- Add these lines to LocalSettings.php :
$wgCategoryTreeSidebarRoot = 'Category:article_name';
Using MediaWiki: namespace pages
If you want to create a link that goes to the generic categorytree (displayed as Category tree) when you're on a non-category page, and to a particular categorytree (displayed as View as category tree, with foo being the name of the category you're viewing) when you're on a category page:
- Add to your MediaWiki:Sidebar (right above the SEARCH is a good place) a line,
** sidebarcategorytree-url|sidebarcategorytree
- Create a [[MediaWiki:Sidebarcategorytree]] with, say:
{{#ifeq: {{NAMESPACE}}|Category|View as category tree|Category tree}}
- Create a [[MediaWiki:Sidebarcategorytree-url]] with, say:
{{#ifeq: {{NAMESPACE}}|Category|Special:CategoryTree/{{BASEPAGENAME}}|Special:CategoryTree/Categories}}
See also
Esta extensão está sendo usada(o) por um ou mais projetos da Wikimedia. Isto significa que, provavelmente, a extensão é estável e funciona bem o suficiente para ser utilizada(o) em sites da web de alto tráfego. Procure pelo nome dessa extensão nos arquivos de configuração CommonSettings.php e InitialiseSettings.php da Wikimedia para verificar onde ela foi instalada. Uma lista completa das extensões instaladas numa wiki em particular podem ser visualizadas na página Special:Version da wiki. |
Esta extensão está incluída nas seguintes fazendas/hospedagens (farms/hosts) e/ou pacotes wiki: Esta não é uma lista autoritativa (oficial). Algumas fazendas/hospedagens (farms/hosts) e/ou pacotes wiki podem conter esta extensão mesmo que não estejam listados aqui. Sempre verifique com suas fazendas/hospedagens (farms/hosts) ou pacotes wiki para confirmar. |