Вопрос
Я не совсем уверен, возможно ли это в MediaWiki.
У меня есть несколько категорий, каждая из которых содержит несколько страниц.Если вы откроете страницу категории, вы увидите содержимое категории, которое обычно состоит из этих трех частей:
- Пользовательский текст (который можно редактировать с помощью ссылки редактирования).
- Все подкатегории, которые прикреплены к этой категории.
- Все страницы, которые прикреплены к этой категории.
Моя цель — создать страницу, включающую хотя бы третью часть нескольких категорий.Страница, на которой показаны все названия страниц, прикрепленные к нескольким категориям по моему выбору, сгруппированные по их категориям.
Мой первый подход заключался в использовании стандартного синтаксиса включения MediaWiki:
Category A contains these pages: {{:Category:A}} Category B contains these pages: {{:Category:B}} Category C contains these pages: {{:Category:C}} ...
К сожалению, это исключило только часть №1 категории:определяемый пользователем текст.Список названий страниц отсутствовал.
Моя вторая идея заключалась в том, чтобы взглянуть на функции синтаксического анализатора.Возможно, есть какие-то функции, предлагающие перебор страниц категории.Но я не нашел ни одного.
Возможно, существует расширение MediaWiki...
Есть ли умный способ реализовать это?
Решение
Пытаться http://www.mediawiki.org/wiki/Extension:CategoryTree, со следующим синтаксисом:
Category A contains these pages:
<categorytree hideroot="true" namespaces="-">Category A</categorytree>
Другие советы
Если вам нужен больший контроль над отображением результатов, вы можете предоставить Семантическая Медиавиики попытка.
Синтаксис будет выглядеть примерно так:
Pages in Category A:
{{#ask:[[Category:A]]
|format=ul
}}
Даже если вы не используете семантические свойства, вы можете использовать механизм запросов для отображения страниц на основе категорий.
Расширение Медиавики Динамический список страниц (http://www.mediawiki.org/wiki/Extension:DynamicPageList_(сторонний)) делает это с легкостью, создавая маркированные списки статей в категории:
Pages in Category A:
<dpl>
category=A
</dpl>
без такого тяжеловесного решения, как Semantic MediaWiki.Просто установите и работайте.
DPL имеет богатый синтаксис для более мощных динамических списков.Например, чтобы создать нумерованный список в 3 столбца:
<dpl>
category=A
mode=ordered
columns=3
</dpl>