2009-06-26 6 views
11

Je ne sais pas si c'est possible dans MediaWiki.Transférer une catégorie dans MediaWiki

J'ai plusieurs catégories, chacune contenant quelques pages. Si vous ouvrez une page de catégorie, vous verrez le contenu de la catégorie qui comprend habituellement ces trois parties:

  1. Un texte défini par l'utilisateur (qui peut être modifié en utilisant le lien d'édition).
  2. Toutes les sous-catégories qui sont associées à cette catégorie.
  3. Toutes les pages qui sont associées à cette catégorie.

Mon but est de créer une page qui comprend au moins la troisième partie de plusieurs catégories. Une page qui me montre tous les noms de pages qui sont attachés à plusieurs catégories de mon choix, groupés par leur catégorie.

Ma première approche a consisté à utiliser la syntaxe standard transclude de MediaWiki:

 
    Category A contains these pages: 
    {{:Category:A}} 
    Category B contains these pages: 
    {{:Category:B}} 
    Category C contains these pages: 
    {{:Category:C}} 
    ... 

Malheureusement, cette seule partie transclus # 1 d'une catégorie: le texte défini par l'utilisateur. La liste des noms de pages était manquante.

Ma deuxième idée était de jeter un oeil aux fonctions de l'analyseur. Il y a peut-être des fonctions qui énumèrent les pages d'une catégorie. Mais je n'en ai trouvé aucun.

Peut-être il y a une extension MediaWiki là-bas ...

est-il un moyen intelligent pour réaliser cela?

Répondre

3

Si vous voulez plus de contrôle sur la façon dont les résultats sont affichés, vous pouvez donner Semantic Mediawiki essayer.

La syntaxe ressemblerait à quelque chose comme:

Pages in Category A: 

{{#ask:[[Category:A]] 
|format=ul 
}} 

Même si vous n'êtes pas en utilisant les propriétés sémantiques, vous pouvez utiliser le mécanisme de requête pour afficher les pages en fonction des catégories.

0

L'extension MediaWiki dynamique Page Liste (http://www.mediawiki.org/wiki/Extension:DynamicPageList_(third-party)) fait avec facilité, produire des listes à puces d'articles dans une catégorie:

Pages in Category A: 
<dpl> 
category=A 
</dpl> 

sans solution poids lourd comme Semantic MediaWiki. Juste installez et allez. DPL a une syntaxe riche pour des listes dynamiques plus puissantes. Par exemple, pour produire une liste numérotée en 3 colonnes:

<dpl> 
category=A 
mode=ordered 
columns=3 
</dpl>