Перейти к содержанию

Руниверсалис:Волшебные слова

Материал из энциклопедии Руниверсалис

«Волшебные слова» — это строки текста, которые MediaWiki связывает с возвращаемым значением или функцией, например, временем, сведениями о сайте или именами страниц.

Существуют три основных типа «волшебных слов»:

  • Переключатели поведения: это обычно слова, написанные большими буквами, обрамлённые двойным подчеркиванием, например, __FOO__.
  • Переменные: это заглавные буквы в двойных фигурных скобках, например, {{FOO}}. В сущности, они очень похожи на шаблоны.
  • Функции парсера: они могут принимать параметры, и имеют вид {{foo:...}} или {{#foo:...}}, например, {{#invoke:...}}.

Переменные и функции парсера могут использовать подстановку (subst:), так же, как и шаблоны. Странично-зависимые волшебные слова изменяют или возвращают данные о текущей странице (по умолчанию), даже если слово добавляется через раскрываемый шаблон или включённое в текст системное сообщение.

Переключатели поведения

Переключатели поведения, влияющие на оформление и поведение страниц (если поддерживаются темой оформления) и часто используются для того, чтобы скрыть или показать некоторый элемент страницы.

Слово Описание
Содержание
__NOTOC__ Скрывает таблицу содержания (англ. table of contents, TOC)
__FORCETOC__ Заставляет оглавление появиться в обычном месте — перед первым заголовком (отменяет действие __NOTOC__). Не будет работать в темах оформления, отображающих содержание вне текста статьи, например, в «Вектор (2022)».
__TOC__ Помещает оглавление в текущую позицию (переопределяя __NOTOC__). Если используется несколько раз, содержание будет отображаться у первого вызова. Не будет работать в темах оформления, отображающих содержание вне текста статьи, например, в «Вектор (2022)».
Редактирование
__NOEDITSECTION__ Скрывает ссылки «править» для каждой секции страницы. Это особенно полезно, когда заголовок создается из шаблона: нормальный вики-инструмент редактирования разделов в этом случае изменял бы код шаблона, что, как правило, выглядит для пользователя противоестественно. Использование этого шаблона вызовет изменения в самом шаблоне, на всех страницах, в которые он вставлен, и всех остальных шаблонах, вставленных на той же странице. Возможен обходной путь
__NEWSECTIONLINK__ Добавляет ссылку рядом со вкладкой «Править», которая добавляет новый раздел на любых страницах, кроме страниц обсуждений (смотрите a section at the end вставка раздела в конец страницы)
__NONEWSECTIONLINK__ Удаляет ссылку около вкладки «Править» на страницах в пространствах имён обсуждений
Категории
__NOGALLERY__ При просмотре категории заменяет изображения на обычные ссылки
__HIDDENCAT__ Скрывает категорию из списка категорий на страницах, которые в неё входят, и подкатегориях (есть параметр в настройках пользователя для включения их отображения).
__EXPECTUNUSEDCATEGORY__ Удаляет эту категорию из неиспользуемых
Другие
__INDEX__

Позволяет поисковым системам индексировать страницу (переписывает $wgArticleRobotPolicies, но не robots.txt). Подчиняется переменной $wgExemptFromUserRobotsControl.

__NOINDEX__ Запрещает индексацию страницы поисковыми системами (страница не будет отображена в результатах поиска). Подчиняется переменной $wgExemptFromUserRobotsControl.
__STATICREDIRECT__ На страницах-перенаправлениях запрещает MediaWiki автоматически обновлять ссылку в случае, когда кто-то, переименовывая страницу, поставил флажок «Исправить перенаправления, указывающие на прежнее название» (для чего требуется $wgFixDoubleRedirects).
__EXPECTUNUSEDTEMPLATE__ Используется на странице шаблона, удаляет эту страницу из Служебная:Неиспользуемые шаблоны.

Если этот переключатель не предназначен для включения в содержимое шаблона, его следует использовать внутри ‎<noinclude>...‎</noinclude> (или на странице документации шаблона внутри ‎<includeonly>...‎</includeonly>), аналогично категориям шаблонов. См. Руниверсалис:Шаблоны.

Если переключатель предназначен для удаления из отчёта всех страниц, которые перечисляют данный шаблон (например, уведомление, которое перечисляется на тестовых подстраницах или в песочницах), поместите переключатель внутри тегов ‎<includeonly>...‎</includeonly> на странице шаблона.

Из расширений
<translate> Extension</translate> <translate> Word</translate> <translate> Description</translate>
Disambiguator __DISAMBIG__ Обозначает страницы решения неоднозначностей.
DiscussionTools __ARCHIVEDTALK__ Скрывает ссылки «ответить» из обсуждений на заархивированных страницах.
__NOTALK__ Заставляет страницу в пространстве имен обсуждения не рассматриваться как страница обсуждения.

Переменные

Переменные возвращают информацию о текущей странице или дате, которая может быть использована непосредственно в синтаксисе, например {{CURRENTYEAR}} или {{SITENAME}}. Синтаксис большинства из них похож на синтаксис шаблонов. Переменные, помеченные как «[Затратная функция]», отслеживаются движком, и возможное число их включений на одной странице ограничено. См. Затратные функции парсера.

Если имя шаблона конфликтует с переменной, будет использоваться эта переменная (поэтому для транскрипции шаблона Шаблон:PAGENAME вам нужно будет написать {{Template:PAGENAME}}). В некоторых случаях добавление параметров заставит синтаксический анализатор вызывать шаблон; например, Шаблон:CURRENTDAYNAME включает Шаблон:CURRENTDAYNAME, а не переменную.

Дата и время

Следующие переменные возвращают текущую дату и время в UTC.

Вследствие кэширования страниц браузером и MediaWiki, эти переменные часто показывают когда страница была закэширована, вместо отображения текущего времени.

Использование этих переменных приводит к кэшированию страниц на более ограниченное количество секунд. Это настраивается в MagicWordFactory.

Переменная Результат Описание
Год
{{CURRENTYEAR}} 2026 Год
Месяц
{{CURRENTMONTH}}

{{CURRENTMONTH2}}

04 Месяц
{{CURRENTMONTH1}} 4 Месяц (порядковый номер)
{{CURRENTMONTHNAME}} апрель Месяц (название)
{{CURRENTMONTHNAMEGEN}} апреля Месяц (в родительном падеже)
{{CURRENTMONTHABBREV}} апр Месяц (сокращенно)
День
{{CURRENTDAY}} 14 День месяца (без нуля)
{{CURRENTDAY2}} 14 День месяца (с нулем)
{{CURRENTDOW}} 2 День недели (число). От 0 (воскресенье) до 6 (суббота)
{{CURRENTDAYNAME}} вторник День недели (имя)
Время
{{CURRENTTIME}} 07:49 Время (24-часовой формат — ЧЧ:ММ)
{{CURRENTHOUR}} 07 Час (01..24)
Разное
{{CURRENTWEEK}} 16 Неделя (число)
{{CURRENTTIMESTAMP}} 20260414074933 Отметка времени в формате ГГГГММДДЧЧммсс

Нет волшебного слова {{CURRENTDATE}}, но может существовать такой шаблон.

Следующие переменные возвращают значения, аналогичные вышеперечисленным, но используют настройки сервера или значение параметра $wgLocaltimezone:

  • {{LOCALYEAR}}
  • {{LOCALMONTH}}
  • {{LOCALMONTH1}}
  • {{LOCALMONTH2}}
  • {{LOCALMONTHNAME}}
  • {{LOCALMONTHNAMEGEN}}
  • {{LOCALMONTHABBREV}}
  • {{LOCALDAY}}
  • {{LOCALDAY2}}
  • {{LOCALDOW}}
  • {{LOCALDAYNAME}}
  • {{LOCALTIME}}
  • {{LOCALHOUR}}
  • {{LOCALWEEK}}
  • {{LOCALTIMESTAMP}}

Технические метаданные

Функция Результат Описание
Страница
{{PAGEID}} 23115566 Возвращает идентификатор страницы (ID страницы).
{{REVISIONDAY}} 27 День совершения правки (без нуля)
{{REVISIONDAY2}} 27 День совершения правки (c нулем)
{{REVISIONMONTH}} 12 Месяц совершения правки (с нулём)
{{REVISIONMONTH1}} 12 Месяц совершения правки (без нуля)
{{REVISIONYEAR}} 2025 Год совершения правки
{{REVISIONTIMESTAMP}} 20251227234050 Временная метка совершения правки
{{REVISIONUSER}} Трой Макклюр Имя пользователя, сделавшего данное редактирование, или пользователя, просматривающего редактирование
{{REVISIONSIZE}} 99235 Размер (в байтах викитекста) просматриваемой версии страницы или превью
Воздействуют на содержимое страницы
{{DISPLAYTITLE:заголовок}}
{{DISPLAYTITLE: заголовок|noerror}}
{{DISPLAYTITLE:заголовок|noreplace}}
Позволяет изменять отображаемый заголовок текущей страницы. Если для параметра $wgRestrictDisplayTitle не установлено значение false, значение должно быть эквивалентно заголовку по умолчанию: разрешены только изменения заглавных букв в определённых частях заголовка (не во всех) и замена пробелов символами подчеркивания. Это может быть отключено или включено при помощи $wgAllowDisplayTitle.

Может принимать второй параметр со значениями noerror или noreplace, чтобы подавлять сообщение об ошибке, когда на странице используется несколько displaytitle или чтобы displaytitle ничего не делал, если displaytitle уже указан ранее на этой странице.

{{DEFAULTSORT:ключ}}
{{DEFAULTSORTKEY:ключ}}
{{DEFAULTCATEGORYSORT:ключ}}
{{DEFAULTSORT:ключ|noerror}}
{{DEFAULTSORT:ключ|noreplace}}
Устанавливает ключ сортировки страницы во всех её категориях по умолчанию. Например, если вставить {{DEFAULTSORT:Пупкин, Василий}} в конце страницы Василий Пупкин, то по умолчанию страница будет сортироваться в категориях по букве П.

Может принимать второй параметр со значениями noerror или noreplace, чтобы подавлять сообщение об ошибке, когда на странице используется несколько ключей сортировки или чтобы defaultsort ничего не делал, если defaultsort уже указан ранее.

Статистика

Числа, возвращаемые этими переменными, содержат разделители разрядов (запятая, точка или пробел, в зависимости от языка локализации). Для получения неотформатированных чисел используется флаг «:R» (например, {{NUMBEROFPAGES}} → 11 917 214 и {{NUMBEROFPAGES:R}} → 11917214).

Используйте |R для волшебных слов, для которых требуется параметр типа PAGESINCATEGORY (например, {{PAGESINCATEGORY:Help}} и {{PAGESINCATEGORY:Help|R}} или {{PAGESINCATEGORY:Help|subcats}} и {{PAGESINCATEGORY:Help|subcats|R}}). Также применимо к '''<code><nowiki>{{PAGESIZE:название страницы}}, указанному выше.

Переменная Результат Описание
{{NUMBEROFPAGES}} 11 917 214 Количество страниц онлай-энциклопедии.
{{NUMBEROFARTICLES}} 2 090 186 Количество страниц в основном пространстве, соответствующих критериям статьи. Смотрите Manual:$wgArticleCountMethod для более подробной информации.
{{NUMBEROFFILES}} 1 910 668 Количество загруженных файлов.
{{NUMBEROFEDITS}} 14 613 449 Общее количество правок.
{{NUMBEROFUSERS}} 952 Количество зарегистрированных пользователей.
{{NUMBEROFADMINS}} 20 Количество администраторов.
{{NUMBEROFACTIVEUSERS}} 80 Количество активных пользователей, на основании критериев, используемых в Служебная:Статистика.
{{PAGESINCATEGORY:названиекатегории}}
{{PAGESINCAT:названиекатегории}}
59
59
[Затратная функция] Число страниц (включая все подкатегории и файлы) в заданной категории. (Руниверсалис: Справка используется для демонстрации)
{{PAGESINCATEGORY:названиекатегории|all}}
{{PAGESINCATEGORY:названиекатегории|pages}}
{{PAGESINCATEGORY:названиекатегории|subcats}}
{{PAGESINCATEGORY:названиекатегории|files}}
59
53
6
0
[Затратная функция] Соответственно, количество
  • всех страниц
  • обычных страниц (исключая подкатегории и файлы)
  • подкатегорий или
  • файлов

в заданной категории. (Руниверсалис: Справка используется для демонстрации)

{{NUMBERINGROUP:название группы}}
{{NUMINGROUP:название группы}}
10
10
Число пользователей определённой группы (группа «Боты» (bot) используется для демонстрации)
{{PAGESINNS:номер}}
{{PAGESINNAMESPACE:номер}}
отключено [Затратная функция]

Количество страниц в заданном пространстве имён (замените номер на ID нужного пространства имён)

Например, {{PAGESINNAMESPACE:14}} выведет количество страниц категорий. {{PAGESINNS:0}} отличается от {{NUMBEROFARTICLES}} тем, что первый включает страницы перенаправления и устранения неоднозначности. По умолчанию отключено, включается с помощью $wgAllowSlowParserFunctions.

Названия страниц

Переменная Для текущей страницы Описание
{{FULLPAGENAME}} Руниверсалис:Волшебные слова Пространство имён и название страницы (включая все уровни подстраниц).
{{PAGENAME}} Волшебные слова Полное название страницы (включая все уровни подстраниц) без пространства имён.
{{BASEPAGENAME}} Волшебные слова

Название страницы без предыдущей подстраницы и без указания пространства имён. Возвращает Title/Foo со страницы Help:Title/Foo/Bar

{{ROOTPAGENAME}} Волшебные слова Имя страницы, корневой к данной. Возвращает Title со страницы Help:Title/Foo/Bar
{{SUBPAGENAME}} Волшебные слова <translate> The [[<tvar name=help-subpages>Special:MyLanguage/Help:Subpages</tvar>|subpage]] title.</translate> <translate> Would return <tvar name=foo>Bar</tvar> on page <tvar name=baz>Help:Title/Foo/Bar</tvar>.</translate>

Название подстраницы. Возвращает Bar со страницы Help:Title/Foo/Bar.

Если подстраницы не существует, возвращается значение {{PAGENAME}}.

Для более сложного разделения, используйте функцию {{#titleparts:}} из расширения функций парсера.

{{SUBJECTPAGENAME}}
{{ARTICLEPAGENAME}}
Руниверсалис:Волшебные слова
Руниверсалис:Волшебные слова
Полное название страницы для ассоциированных с ней субъектов (например, статья или файл). Используется на страницах обсуждения.
{{TALKPAGENAME}} Обсуждение Руниверсалис:Волшебные слова Полное название страницы ассоциированной страницы обсуждения.

Ни на одно из них не влияют изменения отображаемого заголовка с помощью {{DISPLAYTITLE:xxxx}}; возвращаемые значения являются исходным заголовком страницы.

«Волшебные слова» {{BASEPAGENAME}} и {{SUBPAGENAME}} работают только для пространств имён, в которых включены подстраницы. См. $manual-wg-ns-with-subpages, чтобы узнать о включении подстраниц.


URL-кодирование названий страниц

Также есть эквиваленты для использования в URL-адресах страниц MediaWiki (со знаками подчёркивания вместо пробелов и с URL-кодированием некоторых символов или заменой на числовые коды HTML):

  • {{FULLPAGENAMEE}}
  • {{PAGENAMEE}}
  • {{BASEPAGENAMEE}}
  • {{SUBPAGENAMEE}}
  • {{SUBJECTPAGENAMEE}}
  • {{ARTICLEPAGENAMEE}}
  • {{TALKPAGENAMEE}}
  • {{ROOTPAGENAMEE}}

Заметьте, что {{PAGENAME:...}}, {{PAGENAMEE:...}} и {{urlencode:...}} реализованы по-разному. Подробнее смотрите в Manual:PAGENAMEE encoding.

Пространство имён

Переменная Результат Описание
{{NAMESPACE}} Руниверсалис Пространство имён (название) (кроме основного пространства имён)
{{NAMESPACENUMBER}} 4 ID пространства имён страницы
{{SUBJECTSPACE}}
{{ARTICLESPACE}}
Руниверсалис
Руниверсалис
Пространство имён для текущей страницы
{{TALKSPACE}} Обсуждение Руниверсалис Пространство имён для текущей страницы обсуждения

Эквиваленты с URL-кодированием (со знаками подчёркивания вместо пробелов и с URL-кодированием некоторых символов):

  • {{NAMESPACEE}}
  • {{SUBJECTSPACEE}}
  • {{ARTICLESPACEE}}
  • {{TALKSPACEE}}

Эти функции могут в качестве параметра принимать полное имя любой страницы и возвращать пространства имён для неё:

  • {{NAMESPACENUMBER:Руниверсалис:Волшебные слова}}4
  • {{NAMESPACE:Руниверсалис:Волшебные слова}}Руниверсалис (Страницы в основном пространстве будут возвращены пустыми)
  • {{NAMESPACE:Руниверсалис:Волшебные слова}}Руниверсалис
  • {{SUBJECTSPACE:Руниверсалис:Волшебные слова}}Руниверсалис
  • {{ARTICLESPACE:Руниверсалис:Волшебные слова}}Руниверсалис
  • {{TALKSPACE:Руниверсалис:Волшебные слова}}Обсуждение Руниверсалис

Параметр не должен совпадать с названием пространства имён:

  • {{SUBJECTSPACE:Руниверсалис:Волшебные слова}}Руниверсалис (Пустая)

Экранирование символов

MediaWiki интерпретирует определённые символы как разделители разметки в определённых контекстах, в частности,:

  • вызовы шаблона
  • таблицы
  • вызовы функций

Чтобы предотвратить немедленную интерпретацию (чтобы символ можно было отобразить буквально или позже интерпретировать как разделитель), в качестве управляющей последовательности можно использовать {{character}}, такой как {{!}}, но поддерживаются только следующие символы (замены). Эта форма может быть более понятной или, по крайней мере, более короткой, чем использование эквивалентного <nowiki>character</nowiki>.

Синтаксис Результат Описание
{{!}} !

Используется для включения вертикальной черты (пайпа). По историческим и техническим причинам эта функция не считается реальной экранирующей последовательностью. Вместо вертикальной черты в синтаксисе используется восклицательный знак, который визуально напоминает вертикальную черту. Дополнительные сведения см. Help:Extension:ParserFunctions#Escaping pipe characters in tables.

До того, как эта возможность была реализована в качестве волшебного слова, многие вики достигали такого же эффекта создав шаблон (Шаблон:!), который просто отображал |.

{{=}} = Используется для включения знака равенства.

См. Справка: Расширение: Функции Парсера#Необработанные знаки равенства для дальнейшего объяснения.

До того, как эта возможность была реализована в качестве волшебного слова, многие вики достигали такого же эффекта создав шаблон (Шаблон:=), который просто отображал =.

Функции парсера

Функции парсера очень похожи на переменные, но принимают один или более аргументов (на самом деле любые магические слова, принимающие аргументы, являются функциями парсера). Имена функций парсера начинают с символа «#» (хеш), чтобы не путать их с шаблонами.

Далее перечислены функции парсера, предоставляемые движком MediaWiki. Функции парсера, добавляемые расширениями (такими, как расширение Расширение: Функции парсера), приведены на отдельной странице: Справка: Расширение: Функции парсера.

Технические метаданные о другой странице

Функция парсера Результат (для страницы Руниверсалис) Описание
{{PAGEID:название страницы}} 13098602 [Затратная функция] Возвращает идентификатор указанной страницы*.
{{PAGESIZE:название страницы}}
{{PAGESIZE: название страницы|R}}
35 716
35716
[Затратная функция] Возвращает размер указанной страницы в байтах. Для получения «сырого» числа (никак не отформатированного) используйте кодовый параметр |R
{{PROTECTIONLEVEL:действие | название страницы}} [Затратная функция] Выводит уровень защиты (например,autoconfirmed, sysop</tvar>), установленный для заданного действияedit, move</tvar>) на указанной странице. Возвращает пустую строку, если она не защищена.
{{PROTECTIONEXPIRY: действие | название страницы}} infinity [Затратная функция] Выводит время окончания защиты (напр. 20160418155030, infinity) для данного действия (напр. edit, move) на указанной странице. Возвращает infinity, если защиты нет.
{{CASCADINGSOURCES: название страницы}} [Затратная функция] Возвращает источники любой действующей на указанную страницу каскадной защиты. Собственное название страницы не возвращают, если только не включают сами себя.
{{REVISIONID: название страницы }} 28585979 [Затратная функция] Возвращает уникальный идентификатор последней версии указанной страницы*.
{{REVISIONDAY: название страницы }} 7 [Затратная функция] День последней правки указанной страницы* (число от 1 до 31).
{{REVISIONDAY2: название страницы }} 07 [Затратная функция] <translate> Day of edit from the last revision of the specified page* (zero-padded number).</translate>
{{REVISIONMONTH: название страницы }} 04 [Затратная функция] Месяц последней проверенной правки указанной страницы*
{{REVISIONMONTH1: название страницы }} 4 [Затратная функция] Месяц последней правки указанной страницы* (число от 1 до 12).
{{REVISIONYEAR: название страницы }} 2026 [Затратная функция] Год последней правки указанной страницы*.
{{REVISIONTIMESTAMP: название страницы }} 20260407114205 [Затратная функция] Время последней правки указанной страницы
{{REVISIONUSER: название страницы }} Shogiru [Затратная функция] Имя пользователя, совершившего последнюю правку указанной страницы
  • Поведение функции парсера меняется, если значение аргумента ссылается на текущую страницу.
  • При предварительном просмотре:
  • если страница существовала ранее, функция вернёт информацию о предпоследней правке;
  • если страница новая, функция вернёт пустую строку.
  • При обычном просмотре функция будет получать информацию о текущей правке и может считаться незатратной.

Получение фрагментов URL

Функция парсера Конструкция → Результат Описание
{{localurl:название страницы}}
{{localurl:название страницы
|строка_запроса}}
{{localurl:MediaWiki}}
→ /MediaWiki
{{localurl:MediaWiki|printable=yes}}
→ /index.php?title=MediaWiki&printable=yes
Относительный путь к странице.
{{fullurl:название страницы}}
{{fullurl:название страницы
|строка_запроса}}

{{fullurl:интервики:имя удаленной(сторонней) страницы
|строка_запроса}}
{{fullurl:Category:Top level}}
https://xn--h1ajim.xn--p1ai/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:Top_level

{{fullurl:Category:Top level|action=edit}}
https://xn--h1ajim.xn--p1ai/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:Top_level&action=edit
{{fullurl:s:Electra|action=edit}}
https://ru.wikisource.org/wiki/Electra?action=edit
{{fullurl:s:es:Electra|action=edit}}
https://ru.wikisource.org/wiki/es:Electra?action=edit

Полная ссылка на страницу, зависимая от используемого протокола, который зависит от $wgServer на локальной вики (и поэтому может или не может начинаться с http(s)://). Здесь также допустимы интервики-префиксы. Замечание: не ограниченные квадратными скобками (простые) ссылки, зависимые от протокола, не станут активными автоматически.
{{canonicalurl:название страницы}}
{{canonicalurl:название страницы
|строка_запроса}}

{{canonicalurl:интервики:имя удаленной(сторонней) страницы
|строка_запроса}}
{{canonicalurl:Category:Top level}}
https://xn--h1ajim.xn--p1ai/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:Top_level

{{canonicalurl:Category:Top level|action=edit}}
https://xn--h1ajim.xn--p1ai/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:Top_level&action=edit {{canonicalurl:w:Category:Top level|action=edit}}
https://xn--h1ajim.xn--p1ai/index.php?title=W:Category:Top_level&action=edit

Абсолютный путь к заглавию, использующий канонический URL. Также разрешает префиксы интервики.
{{filepath:имя файла}}
{{filepath:имя файла|nowiki}}
{{filepath:имя файла|размер_эскиза}}
{{filepath:Wiki.png}}

{{filepath:Wiki.png|nowiki}}

{{filepath:Example.svg|300}}
https://cdn.xn--h1ajim.xn--p1ai/images/thumb/8/84/Example.svg/300px-Example.svg.png

Параметр nowiki обычно удаляет ссылку вокруг пути к файлу (что не видно в этом примере).

Полный путь к файлу или миниатюре файла.
{{urlencode:строка}} или
{{urlencode:строка|QUERY}}
{{urlencode: строка|WIKI}}
{{urlencode:строка|PATH}}
{{urlencode:x:y/z á é}}или
{{urlencode:x:y/z á é|QUERY}}
→ x%3Ay%2Fz+%C3%A1+%C3%A9
{{urlencode:x:y/z á é|WIKI}}
→ x:y/z_%C3%A1_%C3%A9
{{urlencode:x:y/z á é|PATH}}
→ x%3Ay%2Fz%20%C3%A1%20%C3%A9

Обратите внимание, что с версии 1.17 значение по умолчанию изменилось с |WIKI на |QUERY; это может повлиять на шаблоны, использующие эту функцию.

Замена символов, запрещённых к использованию в URL, на %-последовательности (например, пробел будет заменён на %20). См.[1] о различиях. Обратите внимание, что здесь нет функции urldecode, как в устаревшем [2]
Кодировка
кодпробел
none+
QUERY+
WIKI_
PATH%20
{{anchorencode:строка}} {{anchorencode:x y z á é}}
→ x_y_z_á_é
Преобразовать аргумент в вид, пригодный к использованию в URL после символа '#' (якоря)

Ниже приведены эквиваленты, закодированные для использования в URL-адресах MediaWiki (некоторые символы закодированы со знаком процента):

  • {{localurle:название страницы}}
  • {{localurle:название страницы|строка_запроса}}
  • {{fullurle:название страницы}}
  • {{fullurle:название страницы|строка_запроса}}
  • {{fullurle:интервики:имя удаленной(сторонней) страницы|строка_запроса}}
  • {{canonicalurle:название страницы}}
  • {{canonicalurle:название страницы|строка_запроса}}
  • {{canonicalurle:интервики:имя удаленной(сторонней) страницы|строка_запроса}}

Пространства имён

Конструкция {{ns:}} заменяется на название пространства имён на текущем языке, оглавление, каноническое имя или псевдоним. Конструкции {{ns:}}6, <code><nowiki>{{ns:}}-file и {{ns:}}-img (старое имя для пространства имён) заменяются на «File». На страницах французской википедии конструкция {{ns:}}-file-de будет считаться корректной, а конструкция {{ns:}}-file-incorrect (переведённое на немецкий язык слово «File») — нет. Поэтому {{ns:6}}, <code><nowiki>{{ns:File}} и {{ns:Image}} (старое название для пространства имён File) возвращают «File». В вики, где языком содержимого является французский {{ns:Fichier}} также допустимо, но {{ns:Datei}} (локализация «File» на немецком языке) — нет.

Основное пространство имен не имеет имени, то есть {{ns:0}} returns an empty string. Для явного обращения к основному пространству имен можно использовать, {{int:Blanknamespace}} can be used, resulting in «{{int:Blanknamespace}}».

Действие {{nse:}} аналогично действию функции urlencode с одним отличием: пробелы заменяются на символы «_». Это используется во внешних ссылках..

Пространства имён для статей Пространства имён для страниц обсуждений
Использование Результат Использование Результат
{{ns:-2}} / {{ns:Media}} Медиа {{ns:-1}} / {{ns:Special}} Служебная
(no talk page)
{{ns:0}} / {{ns:}} {{ns:1}} / {{ns:Talk}} Обсуждение
{{ns:2}} / {{ns:User}} Участник {{ns:3}} / {{ns:User talk}} Обсуждение участника
{{ns:4}} / {{ns:Project}} Руниверсалис
Varies between wikis
{{ns:5}} / {{ns:Project talk}} Обсуждение Руниверсалис
{{ns:6}} / {{ns:File}} or {{ns:Image}} Файл {{ns:7}} / {{ns:File talk}} or {{ns:Image talk}} Обсуждение файла
{{ns:8}} / {{ns:MediaWiki}} MediaWiki {{ns:9}} / {{ns:MediaWiki talk}} Обсуждение MediaWiki
{{ns:10}} / {{ns:Template}} Шаблон {{ns:11}} / {{ns:Template talk}} Обсуждение шаблона
{{ns:12}} / {{ns:Help}} Справка {{ns:13}} / {{ns:Help talk}} Обсуждение справки
{{ns:14}} / {{ns:Category}} Категория {{ns:15}} / {{ns:Category talk}} Обсуждение категории

Не путайте переведённые на ваш язык пространства имён с настраиваемыми пространствами имён.

Форматирование

Функция Ввод → Результат Описание

{{formatnum:неотформатированное число}}
{{formatnum:число, отформатированное с помощью formatnum|R}}
{{formatnum:неотформатированное число|NOSEP}} {{formatnum:неотформатированное число|LOSSLESS}}

  • Простой пример
    • {{formatnum:987654321.654321}}
      → 987 654 321,654321
    • {{formatnum:987 654 321,654321|R}}
      → 987654321.654321
  • Пример для опытных пользователей
    • {{formatnum:{{formatnum:987654321.654321}}|R}}
      → 987654321.654321 (для любого языка)
    • {{formatnum:00001}}
      → 00 001
    • {{formatnum:987654321.654321 |NOSEP}}
      → 987654321.654321
    • Примеры перевода на бенгальский язык
      • {{formatnum:987654321.654321}}
        → ৯৮,৭৬,৫৪,৩২১.৬৫৪৩২১
      • {{formatnum:987654321.654321 |NOSEP}}
        → ৯৮৭৬৫৪৩২১.৬৫৪৩২১
      • {{formatnum:৯৮,৭৬,৫৪,৩২১.৬৫৪৩২১ |R}}
        → 987654321.654321
    • Примеры с потерей точности
      • {{formatnum:10000000000000001}}
        → 10 000 000 000 000 000
      • {{formatnum:10000000000000001|LOSSLESS}}
        → 10 000 000 000 000 000

Неподдерживаемое
{{formatnum:{{formatnum:987.654.321}}}}
→ 987 654 321 (например, на итальянском языке)


В следующих примерах указаны неправильные аргументы с или без использования|R:
{{formatnum:987,654.321|R}} (наименее повреждённая)
{{formatnum:987.654,321|R}}
{{formatnum:987 654,321|R}}
{{formatnum:987&nbsp;654,321|R}}

Берёт неформатированное число (арабские цифры без разделителей групп разрядов и с . десятичным разделителем) и выводит его в локализованном наборе цифр, отформатированным с десятичным разделителем и разделителями групп в соответствии с языком страницы.

Для обратного действия можно использовать параметр |R, для использования в математических ситуациях: он надёжен и должен использоваться только для расформатирования чисел, которые заведомо отформатированы в точности так, как их форматирует formatnum по текущей вики.

Параметр NOSEP («без разделителей») означает, что никакие групповые и десятичные разделители не изменяются; formatnum преобразует только сами цифры для языков, которые не используют индо-арабскую систему цифр. NOSEP также может предотвратить нестандартную группировку цифр, которую вы не ожидаете.

По умолчанию отформатированный номер может быть немного неточным.

В этом случае можно добавить параметр LOSSLESS, чтобы вместо него использовать неформатированное (точное) число, если точное отображение числа важнее, чем его правильное форматирование.

Внимание! Не используйте formatnum в системных сообщениях. Форматируйте числа в коде с помощью соответствующих функций. Подробности см. в [3]

Внимание! Ведущие нули не удаляются, взамен можно использовать {{#expr:00001}}, если установлено Расширение: Функции парсера.

Внимание! Если вы не подаёте на вход числа в точности в требуемом формате, не ждите надёжного выхода, особенно для неанглийских вики.


Если вам действительно нужно отформатировать (в соответствии с языковым стандартом википроекта) число в неизвестном формате ввода, вы могли бы попробовать использовать formatnum два раза (но не в том случае, если у него может быть десятичная часть, или его разделитель будет съеден, или число не будет отформатировано). Имейте в виду, что это скорее «хак», чем обычный способ действий, поэтому выходные данные могут быть ненадежными. Имейте в виду, что это скорее взлом, чем обычный способ действий, поэтому результат может быть ненадежным.

{{#dateformat:date}}
{{#formatdate:date}}
{{#dateformat:date|format}}
{{#formatdate:date|format}}

{{#dateformat:25 dec 2009|ymd}}
→ 25 dec 2009 (ваша настройка), 2009 December 25 (default)
{{#formatdate:dec 25,2009|dmy}}
→ dec 25,2009 (ваша настройка), 25 December 2009 (по умолчанию)
{{#dateformat:2009-12-25|mdy}}
декабрь 25, 2009 (ваша настройка), December 25, 2009 (по умолчанию)
{{#formatdate:2009 dec 25|ISO 8601}}
→ 2009 dec 25 (ваша настройка), 2009-12-25 (по умолчанию)
{{#dateformat:25 decEmber|mdy}}
→ 25 decEmber (ваша настройка), December 25 (по умолчанию)

Замечание: В приведённом выше примере «Ваш префикс» относится только к префиксу даты текущей MediaWiki.

<translate> Formats an unlinked date based on user «date format» preference, and adds metadata tagging it as a formatted date.</translate> <translate> For logged-out users and those who have not set a date format in their preferences, dates can be given a default: <tvar name=1>mdy, dmy, ymd, ISO 8601</tvar> (all case sensitive).</translate> <translate> If only the month and day are given, only <tvar name=1>mdy</tvar> and <tvar name=2>dmy</tvar> are valid.</translate> <translate> If a format is not specified or is invalid, the input format is used as a default.</translate> <translate> If the supplied date is not recognized as a valid date (specifically, if it contains any metadata such as from a nested use of these or similar templates), it is rendered unchanged, and no (additional) metadata is generated.</translate>

Форматирует несвязанную дату на основе пользовательского предпочтения «формат даты» и добавляет метаданные, помечая её как отформатированную дату. Для пользователей, вышедших из системы, а также тех, кто не установил формат даты в своих предпочтениях, датам может быть присвоено значение по умолчанию: mdy, dmy, ymd, ISO 8601 (с учётом регистра). Если формат не указан или является недопустимым, используется формат по умолчанию. Если предоставленная дата не распознается как действительная дата (в частности, если она содержит какие-либо метаданные, например, от вложенного использования этих или аналогичных шаблонов), она отображается без изменений и никакие (дополнительные) метаданные не создаются. Для пользователей, вышедших из системы, и тех, кто не установил формат даты в своих настройках, датам может быть присвоено значение по умолчанию: mdy, dmy, ymd, ISO 8601 (с учётом регистра). Если указаны только месяц и день, действительны только mdy и dmy. Если формат не указан или является недопустимым, используется формат ввода по умолчанию. Если указанная дата не распознается как действительная (в частности, если она содержит какие-либо метаданные, например, из вложенного использования этих или аналогичных шаблонов), она отображается без изменений, и никакие (дополнительные) метаданные не генерируются.

Внимание! Хотя стандарт ISO 8601 требует дат по григорианскому календарю, параметр ISO в этой функции также отформатирует даты, выпадающие из стандартного григорианского диапазона (например, даты до 1583 г.). Также это волшебное слово не может правильно преобразовывать отрицательные годы (используемые по ISO 8601) и годы BC или BCE (используемые в обычной переписке).

{{lc:string}}

{{lc:DATA CENTER}} → data center Строка в нижнем регистре.

{{lcfirst:string}}

{{lcfirst:DATA center}} → dATA center Строка с первым символом в нижнем регистре.

{{uc:string}}

{{uc:text transform}} → TEXT TRANSFORM Строка в верхнем регистре.

{{ucfirst:string}}

{{ucfirst:text tRAnSFORM}} → Text tRAnSFORM Строка с первым символом в верхнем регистре.

{{padleft:xyz|stringlength}}
{{padleft:xyz|strlen|char}}
{{padleft:xyz|strlen|string}}

{{padleft:xyz|5}} → 00xyz

{{padleft:xyz|5|_}} → __xyz
{{padleft:xyz|5|abc}} → abxyz
{{padleft:xyz|2}} → xyz
{{padleft:|1|xyz}} → x (первый символ строки)

Вставляет строку символов заполнения (символ, выбранный в третьем параметре; по умолчанию «0») заданной длины (второй параметр) рядом с выбранным базовым символом или переменной (первый параметр). Последние цифры или символы в базе заменяют последние символы в заполнении; то есть 044 производит 044. Строка выравнивания может быть обрезана, если её длина не делится нацело на требуемое количество символов.

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

{{padright:xyz|stringlength}}
{{padright:xyz|strlen|char}}
{{padright:xyz|strlen|string}}

{{padright:xyz|5}} → xyz00

{{padright:xyz|5|_}} → xyz__
{{padright:xyz|5|abc}} → xyzab
{{padright:xyz|2}} → xyz
{{padright:|1|xyz}} → x

Аналогично padleft, но добавляет отступ с правой стороны.

{{bidi:string}}

{{bidi:text transform}} → ‪text transform‬

{{bidi:كتابة عربية}} → ‫كتابة عربية‬

Оборачивает текст соответствующим сценарию маркером направленности (либо слева направо (U+202A), либо справа налево (U+202B)) и символом форматирования направленности (U+202C), чтобы обеспечить безопасность направленности при использовании сочетания сценариев в выполняемом тексте.

См. также: [4].

Функции локализации

Здесь приведены волшебные слова, используемые как основные инструменты локализации. Прочие волшебные слова часто зависят от местной вики и настроек или от выбранного языка: см. в частности #Дата и время, #Форматирование. Расширение: Перевод добавило больше волшебных слов.

Использование этих волшебных слов может быть очень сложным, а документация неполной; больше сведений на PLURAL, GRAMMAR, GENDER.

Использование Конструкция → Результат Описание
{{#language}}

{{#language:код языка}}
{{#language:код языка|код целевого языка}}

{{#language:ar}} → العربية
{{#language:ar|en}} → العربية
Полное имя языка для заданного кода языка: собственное имя по умолчанию, имя переводится на целевой язык, если указан код целевого языка. Чтобы перевод работал, должен быть установлен Расширение: CLDR. Если аргумент не указан, возвращает название целевого языка (для статей — язык содержимого; для сообщений — язык пользователя).
{{#bcp47}}

{{#bcp47:код языка}}

{{#bcp47:sr-ec}} → sr-Cyrl

{{#bcp47:zh-yue}} → yue

Языковой тег IETF BCP-47 для данного кода языка. Если аргумент не указан, возвращает тег целевого языка (для статей — язык содержимого; для сообщений — язык пользователя).
{{#dir}}

{{#dir:код языка}}
{{#dir:код языка|bcp47}}

{{#dir:en}} → ltr

{{#dir:he}} → rtl
{{#dir:sr-Cyrl|bcp47}} → ltr

Направленность для данного языкового кода, будь то rtl или ltr. Если необязательным вторым аргументом является bcp47, то первый аргумент интерпретируется как языковой тег IETF BCP-47. Если аргумент не указан, возвращает направленность целевого языка (для статей — язык содержимого; для сообщений — язык пользователя).
{{GRAMMAR:N|существительное}} Выводит заданное слово в правильной грамматической форме (склонении, падеже), согласно коду, указанному после двоеточия. Грамматическая трансформация используется в таких языках как польский. См. также $wgGrammarForms и документацию по грамматике на translatewiki.net.

{{#FORMAL:неформальная версия|формальная версия}}

(Зависит от установленной формальности в конфигурации языка) Параметр для индекса формальности, заданного конфигурацией для определённых языков. Индекс формальности по умолчанию равен 0 (неформальный), но некоторые языковые коды, такие как de-formal и es-formal, имеют индекс формальности 1 (формальный). Для этих языков переводы по-прежнему сохраняются в локализации для de и es соответственно, и то, что отображается для конечного пользователя, зависит от того, выбран ли для его интерфейса официальный или неофициальный языковой код.
{{int:название сообщения}} {{int:edit}}Править
(Зависит от языка пользователя; попробуйте: frja)
Переводит данное интерфейсное (interface) сообщение (пространство имён MediaWiki) на язык пользователя. По поводу msgnw и других волшебных слов — смотрите раздел о модификаторах шаблонов.

Обратите внимание, это может повредить/перепутать ссылки кэша в MediaWiki 1.17 и более ранних версиях

{{int:editsectionhint|MediaWiki}} {{int:editsectionhint|MediaWiki}}Редактировать раздел «MediaWiki» Вы также можете использовать параметры с переводом. Параметры обозначены $1, $2, $3 и т. д. Например, вот сообщение для editsectionhint: Edit section: $1. В этом примере MediaWiki заменяет $1.

Модификаторы включения

{{<tvar name=1>tmpl|0={{$1|$2}}</tvar>|Имя страницы|необязательные параметры}} обычно включает другую страницу, по умолчанию из пространства имен. Эти волшебные слова меняют это поведение. 

Прочее

См. также