Mediawiki 1.16: пример использования документации шаблона - PullRequest
0 голосов
/ 28 апреля 2011

Я пишу шаблонную документацию для вики и хотел включить рабочий пример шаблона. Однако я написал шаблон для автоматической категоризации различных полей, и сам шаблон также автоматически классифицируется.

Это означает, что если я просто вызову шаблон, он классифицирует страницу документа ... и, поскольку фактическая страница шаблона включает в себя страницу документа, страница шаблона также будет классифицирована.

Есть ли способ предотвратить автоматическое включение этих категорий?

Ответы [ 3 ]

1 голос
/ 29 апреля 2011

Другой вариант - разрешить параметру, например demo, избегать включения категории.

Если вы не против немного загадочного, вы можете сделать категорию в шаблоне как {{{cat|[[Category:Some_Category]]}}}; затем указание параметра как {{my template|cat=}} предотвратит включение категории.

1 голос
/ 29 апреля 2011

Что-то вроде следующего должно помочь. Оберните категоризацию в свой шаблон внутри функции парсера:

{{#ifeq: {{NAMESPACE}} | Help || [[Category:Some_Category]] }}

Устанавливает категорию, когда шаблон транслируется на страницу, которая не находится в пространстве имен «Справка».

0 голосов
/ 23 июня 2011

Я не уверен, полностью ли я понимаю вопрос (что такое «автоматическая категоризация различных полей»?).Здесь я предполагаю, что вы хотите показать шаблон «в действии» на странице документации - без добавления некоторых категорий (тех категорий, которые страница документации обычно прикрепляет к статьям, использующим этот шаблон), к странице документации.

Итак

[[Category: Some_Category]]

не выполнит эту работу - так как шаблон действительно включен.Правильно?

Попробуйте передать параметр categoryorize = false в шаблон, чтобы указать, что категории не должны быть присоединены в этом случае:

{{# ifeq: {{{категоризировать |}}}| false || [[Category: Some_Category]]}}

Двойная труба после «false» означает: если (категоризировать == false), то (пусто), иначе [[Category: Some_Category]] - т.е.это эквивалентная конструкция для if (NOT (категоризировать == false)) ...

Удачи и спасибо за всю рыбу, Ахим

...