Справка:Шаблоны — различия между версиями
м |
|||
Строка 1: | Строка 1: | ||
− | |||
Шаблоны MediaWiki полезны для размещения одинаковых стандартных элементов (текста или форматирования) в других страницах. | Шаблоны MediaWiki полезны для размещения одинаковых стандартных элементов (текста или форматирования) в других страницах. | ||
== Создание шаблонов == | == Создание шаблонов == | ||
+ | |||
Шаблоны являются обычными вики-страницами, с той разницей, что их названия начинаются с префикса «<code>Шаблон:</code>» («<code>Template:</code>»), | Шаблоны являются обычными вики-страницами, с той разницей, что их названия начинаются с префикса «<code>Шаблон:</code>» («<code>Template:</code>»), | ||
− | поэтому их можно [[ | + | поэтому их можно [[Справка:Создание новых страниц|создавать так же как обычные страницы]]. |
− | + | ||
== Использование шаблонов == | == Использование шаблонов == | ||
+ | |||
Шаблоны — это вики-страницы, используемые в других вики-страницах. Доступных способов использования три: | Шаблоны — это вики-страницы, используемые в других вики-страницах. Доступных способов использования три: | ||
*<code><nowiki>{{Name}}</nowiki></code> добавляет в страницу копию содержимого шаблона (страницы с именем <nowiki>[[Template:Name]]</nowiki>). Обращение к шаблону производится каждый раз, когда производится извлечение использующей его страницы. Таким образом, если изменить шаблон, то отображение использующих его страниц тоже изменится. | *<code><nowiki>{{Name}}</nowiki></code> добавляет в страницу копию содержимого шаблона (страницы с именем <nowiki>[[Template:Name]]</nowiki>). Обращение к шаблону производится каждый раз, когда производится извлечение использующей его страницы. Таким образом, если изменить шаблон, то отображение использующих его страниц тоже изменится. | ||
Строка 72: | Строка 72: | ||
Противоположным образом работает тэг <code><nowiki><includeonly></nowiki></code>. Текст, находящийся между <code><nowiki><includeonly></nowiki></code> и | Противоположным образом работает тэг <code><nowiki><includeonly></nowiki></code>. Текст, находящийся между <code><nowiki><includeonly></nowiki></code> и | ||
− | <code><nowiki></includeonly></nowiki></code> будет обрабатываться и отображаться только когда страница шаблона включена в другую страницу. Очевидным применением этого является добавление всех страниц, содержащих данный шаблон, к [[ | + | <code><nowiki></includeonly></nowiki></code> будет обрабатываться и отображаться только когда страница шаблона включена в другую страницу. Очевидным применением этого является добавление всех страниц, содержащих данный шаблон, к [[Справка:Категории|категории]], без добавления самого шаблона в эту категорию. |
'''Замечание:''' Когда вы изменяете категории, добавляемые в страницу с использованием шаблонов, категоризация может не сработать сразу, так как она управляется {{mediawiki|Manual:Job_queue|очередью задач}}. | '''Замечание:''' Когда вы изменяете категории, добавляемые в страницу с использованием шаблонов, категоризация может не сработать сразу, так как она управляется {{mediawiki|Manual:Job_queue|очередью задач}}. | ||
Строка 90: | Строка 90: | ||
== См. также == | == См. также == | ||
− | * [[Help:External searches]] — пример необычного использования шаблонов. | + | * [[mediawikiwiki:Help:External searches]] — пример необычного использования шаблонов. |
− | * [[ | + | * [[Справка:Ключевые слова]] — забавные вещи, которые вы можете найти в некоторых шаблонах. |
− | *{{mediawiki|meta:Help:Embed page}} — встраиваемые страницы из {{mediawiki|namespace|пространств имен}} отличающихся от <code>Template:</code>. | + | * {{mediawiki|meta:Help:Embed page}} — встраиваемые страницы из {{mediawiki|namespace|пространств имен}} отличающихся от <code>Template:</code>. |
− | [[ | + | [[Категория: Справка]] |
Версия 19:49, 23 января 2010
Шаблоны MediaWiki полезны для размещения одинаковых стандартных элементов (текста или форматирования) в других страницах.
Содержание
Создание шаблонов
Шаблоны являются обычными вики-страницами, с той разницей, что их названия начинаются с префикса «Шаблон:
» («Template:
»),
поэтому их можно создавать так же как обычные страницы.
Использование шаблонов
Шаблоны — это вики-страницы, используемые в других вики-страницах. Доступных способов использования три:
{{Name}}
добавляет в страницу копию содержимого шаблона (страницы с именем [[Template:Name]]). Обращение к шаблону производится каждый раз, когда производится извлечение использующей его страницы. Таким образом, если изменить шаблон, то отображение использующих его страниц тоже изменится.{{subst:Name}}
заменяет данную строку содержимым шаблона в момент сохранения страницы. Таким образом, после сохранения в ней остается копия шаблона, которую можно будет изменять так же, как обычную wiki-разметку. После сохранения шаблон и страница редактируются независимо: изменение страницы не влияет на шаблон, изменение шаблона не влияет на страницу. Note: не стоит пользоваться данным способом, если вы хотите, чтобы изменения шаблона отображались в исппользующих его страницах.{{msgnw:Name}}
включает шаблон в виде формы, отображающейся в использующей его странице, аналогично тому как действует тэг<nowiki>
. Как и в первом случае, изменение шаблона изменяет то, что мы видим при отображении страницы.
Параметры в шаблонах
Шаблон с нумерованными параметрами | |
'''Спасибо...'''<br> <small>за {{{1}}}.<br> Жму руку, {{{2}}}</small> | |
Что пишем | Как будет выглядеть |
{{Thankyou/ru|участие в переводе|Вики}}
|
|
Шаблон с именованными параметрами | |
'''Спасибо...'''<br> <small>за {{{reason}}}.<br> Жму руку, {{{signature}}}</small> | |
Что пишем | Как будет выглядеть |
{{Thankyou/ru |причина=участие в переводе |подпись=Вики}} |
В шаблонах можно объявить параметры, либо как нумерованные {{{1}}}
либо именованные {{{param}}}
.
Пример: Вы хотите оставлять подписи с благодарностью на страницах обсуждения других пользователей, с объясением, за что вы благодарите. Вы можете создать Template:Thankyou/ru с текстом, аналогичным изображенному в таблице примеру.
Вставляя шаблон в страницу, укажите значения для его параметров, разделяя их символом (|): {{Thankyou/ru|всё хорошее|Вики}}
. Для именованных параметров используйте пары «имя=значение», разделяя их тем же символом (|): {{Thankyou/ru|причина=всё хорошее|подпись=Вики}}
. Преимущество использования именованных параметров — гибкость порядка их указания и большая ясность в понимании их назначения, особенно когда параметров много. Если требуется изменить порядок нумерованных параметров, их следует упомянуть явно: {{Thankyou|2=Вики|1=всё хорошее}}
.
Для параметров можно указать значения по умолчанию, т.е. значения, которые будут использоваться, если никакого значения не указано. Например: {{{reason|всё хорошее}}}
будет присваивать значение «всё хорошее» параметру reason, если оно не будет указано в вызове шаблона явно.
Управление включением шаблонов
Тем, какая часть шаблона будет включаться в страницу, можно управлять с помощью тэгов <noinclude>
и
<includeonly>
.
Всё что находится между <noinclude>
и </noinclude>
будет обрабатываться и отображаться только если страница шаблона просматривается сама по себе.
Возможное применения данной возможности следующие:
- отнесение шаблонов к категориям;
- межязыковые ссылки на похожие шаблоны на других языках;
- пояснительный текст по использованию шаблона.
Противоположным образом работает тэг <includeonly>
. Текст, находящийся между <includeonly>
и
</includeonly>
будет обрабатываться и отображаться только когда страница шаблона включена в другую страницу. Очевидным применением этого является добавление всех страниц, содержащих данный шаблон, к категории, без добавления самого шаблона в эту категорию.
Замечание: Когда вы изменяете категории, добавляемые в страницу с использованием шаблонов, категоризация может не сработать сразу, так как она управляется очередью задач.
Систематизация шаблонов
Для эффективного использования шаблонов нужно их легко находить и применять. Легче всего это обеспечить, поместив на страницу шаблона пример его использования. Например такой:
<noinclude> == Использование == Позволяет давать ссылку на тему: {{NameOfTemplate|Term1+Term2+Term3}} </noinclude>
Таким образом редактор сможет просто скопировать пример и модифицировать его для своих нужд.
См. также
- mediawikiwiki:Help:External searches — пример необычного использования шаблонов.
- Справка:Ключевые слова — забавные вещи, которые вы можете найти в некоторых шаблонах.
- meta:Help:Embed page — встраиваемые страницы из пространств имен отличающихся от
Template:
.