Справка:Шаблоны — различия между версиями

Материал из YourcmcWiki
Перейти к: навигация, поиск
м
Строка 1: Строка 1:
{{PD Help Page/ru}}
 
 
Шаблоны MediaWiki полезны для размещения одинаковых стандартных элементов (текста или форматирования) в других страницах.
 
Шаблоны MediaWiki полезны для размещения одинаковых стандартных элементов (текста или форматирования) в других страницах.
  
 
== Создание шаблонов ==
 
== Создание шаблонов ==
 +
 
Шаблоны являются обычными вики-страницами, с той разницей, что их названия начинаются с префикса «<code>Шаблон:</code>» («<code>Template:</code>»),  
 
Шаблоны являются обычными вики-страницами, с той разницей, что их названия начинаются с префикса «<code>Шаблон:</code>» («<code>Template:</code>»),  
поэтому их можно [[Help:Starting a new page/ru|создавать так же как обычные страницы]].
+
поэтому их можно [[Справка:Создание новых страниц|создавать так же как обычные страницы]].
 
+
  
 
== Использование шаблонов ==
 
== Использование шаблонов ==
 +
 
Шаблоны — это вики-страницы, используемые в других вики-страницах. Доступных способов использования три:
 
Шаблоны — это вики-страницы, используемые в других вики-страницах. Доступных способов использования три:
 
*<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> будет обрабатываться и отображаться только когда страница шаблона включена в другую страницу. Очевидным применением этого является добавление всех страниц, содержащих данный шаблон, к [[Help:Categories/ru|категории]], без добавления самого шаблона в эту категорию.
+
<code><nowiki></includeonly></nowiki></code> будет обрабатываться и отображаться только когда страница шаблона включена в другую страницу. Очевидным применением этого является добавление всех страниц, содержащих данный шаблон, к [[Справка:Категории|категории]], без добавления самого шаблона в эту категорию.
  
 
'''Замечание:''' Когда вы изменяете категории, добавляемые в страницу с использованием шаблонов, категоризация может не сработать сразу, так как она управляется {{mediawiki|Manual:Job_queue|очередью задач}}.
 
'''Замечание:''' Когда вы изменяете категории, добавляемые в страницу с использованием шаблонов, категоризация может не сработать сразу, так как она управляется {{mediawiki|Manual:Job_queue|очередью задач}}.
Строка 90: Строка 90:
  
 
== См. также ==
 
== См. также ==
* [[Help:External searches]] — пример необычного использования шаблонов.
+
* [[mediawikiwiki:Help:External searches]] — пример необычного использования шаблонов.
* [[Help:Magic words]]  — забавные вещи, которые вы можете найти в некоторых шаблонах.
+
* [[Справка:Ключевые слова]]  — забавные вещи, которые вы можете найти в некоторых шаблонах.
*{{mediawiki|meta:Help:Embed page}} — встраиваемые страницы из {{mediawiki|namespace|пространств имен}} отличающихся от  <code>Template:</code>.
+
* {{mediawiki|meta:Help:Embed page}} — встраиваемые страницы из {{mediawiki|namespace|пространств имен}} отличающихся от  <code>Template:</code>.
  
[[Category:Справка]]
+
[[Категория: Справка]]

Версия 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>

Таким образом редактор сможет просто скопировать пример и модифицировать его для своих нужд.

См. также