Справка:Волшебные слова
Примечание: Редактируя эту страницу, вы соглашаетесь на передачу своего вклада по лицензии CC0. Подробнее — в проекте Помощь с общественным достоянием. |
«Волшебные слова» в MediaWiki — комбинации текста, управляющие поведением, оформлением той или иной страницы в вики, а также выводящие некоторые полезные переменные из базы данных. Более подробную информацию см. в Руководство:Волшебные слова .
Существуют три основных типа «волшебных слов»:
- Переключатели поведения: это обычно слова, написанные большими буквами, обрамлённые двойным подчеркиванием, например,
__FOO__
. - Переменные: это заглавные буквы в двойных фигурных скобках, например,
{{FOO}}
. В сущности, они очень похожи на шаблоны. - Функции парсера: они могут принимать параметры, и имеют вид
{{foo:...}}
или{{#foo:...}}
, например{{#invoke:...}}
. Смотрите также Справка:Расширение:Функции парсера и Расширение:Scribunto .
Переменные и функции парсера могут использоваться с подстановкой через subst:, так же, как и шаблоны. Странично-зависимые волшебные слова изменяют или возвращают данные о текущей странице (по умолчанию), даже если слово добавляется через раскрываемый шаблон или включённое в текст системное сообщение.
Переключатели поведения
Переключатели поведения, влияющие на оформление и поведение страниц (если поддерживаются темой оформления) и часто используются для того, чтобы скрыть или показать некоторый элемент страницы. Обратите внимание, что некоторые из них не поддерживаются в теме оформления Минерва.
Слово | Описание | Версия | ||
---|---|---|---|---|
Содержание | ||||
__NOTOC__
|
Скрывает содержание страницы (table of contents, TOC). | |||
__FORCETOC__
|
Заставляет оглавление появиться в обычном месте — перед первым заголовком (отменяет действие __NOTOC__ ). Не будет работать в скинах, отображающих содержание вне текста статьи, например, в Vector 2022.
|
|||
__TOC__
|
Помещает оглавление в текущую позицию (переопределяя __NOTOC__ ). Если используется несколько раз, содержание будет отображаться у первого вызова. Не будет работать в скинах, отображающих содержание вне текста статьи, например, в Vector 2022.
|
|||
Редактирование | ||||
__NOEDITSECTION__
|
Скрывает ссылки «править» для каждой секции страницы. Это особенно полезно, когда заголовок создается из шаблона: нормальный вики-инструмент редактирования разделов в этом случае изменял бы код шаблона, что, как правило, выглядит для пользователя противоестественно. Использование этого шаблона вызовет изменения в самом шаблоне, на всех страницах, в которые он вставлен, и всех остальных шаблонах, вставленных на той же странице. Возможен обходной путь. | |||
__NEWSECTIONLINK__
|
Добавляет ссылку рядом со вкладкой «Править», которая добавляет новый раздел на любых страницах, кроме страниц обсуждений (смотрите добавление раздела в конец страницы). |
| ||
__NONEWSECTIONLINK__
|
Удаляет ссылку около вкладки «Править» на страницах в пространстве «Обсуждение» |
| ||
Категории | ||||
__NOGALLERY__
|
Используется на страницах категорий. При просмотре категории заменяет изображения на обычные ссылки. |
| ||
__HIDDENCAT__
|
Используется на странице категории и позволяет скрыть эту категорию и нижеследующие из более старших категорий (в которые включена данная категория) (есть параметры в настройках пользователя для отображения их). |
| ||
__EXPECTUNUSEDCATEGORY__
|
Используется на странице категории. Удаляет эту категорию из Special:UnusedCategories. |
| ||
Преобразование языков | ||||
__NOCONTENTCONVERT__ __NOCC__
|
Запрещает выполнение любой языковой конвертации содержания статьи. Например, будет отображён только китайский (zh), вместо таких вариантов, как zh_cn, zh_tw, zh_sg, или zh_hk. | |||
__NOTITLECONVERT__ __NOTC__
|
Запрещает выполнение языковой конвертации заголовка на сайтах с языковыми вариантами (прочее содержание будет проходить конверсию). | |||
Другие | ||||
__START__
|
Ничего не делает Использовался для указания где начинается сообщение базы данных после комментария, которое не должно быть включено в другие страницы (transcluding). Удалено в r1695 и полностью удалено в r24784 |
| ||
__END__
|
Обозначает конец страницы, не давая MediaWiki удалить конечные пробелы. Удалено в 19213. |
| ||
__INDEX__
|
Позволяет поисковым системам индексировать страницу (переписывает $wgArticleRobotPolicies , но не robots.txt). Подчиняется переменной $wgExemptFromUserRobotsControl . |
| ||
__NOINDEX__
|
Запрещает индексацию страницы поисковыми системами (страница не будет отображена в результатах поиска). Подчиняется переменной $wgExemptFromUserRobotsControl . |
| ||
__STATICREDIRECT__
|
Помещённая на страницу с перенаправлением, запрещает MediaWiki автоматически обновлять ссылку в случае, когда кто-то, переименовывая страницу, поставил флажок «Исправить перенаправления, указывающие на прежнее название» (для чего требуется $wgFixDoubleRedirects ). |
| ||
__EXPECTUNUSEDTEMPLATE__
|
Используется на странице шаблона. Удаляет этот шаблон из Special:UnusedTemplates.
Если этот переключатель не предназначен для включения в содержимое шаблона, его следует использовать внутри Если переключатель предназначен для удаления из отчета всех страниц, которые перечисляют данный шаблон (например, уведомление, которое перечисляется на подстраницах испытательных корпусов или песчаных ящиков), поместите сменщику внутри тегов |
| ||
Из расширений | ||||
Расширение | Слово | Описание | Версии | |
GlobalUserPage | __NOGLOBAL__
|
Отключает глобальную страницу пользователя. Если присутствует на центральной странице пользователя, то на других вики отображаться не будет, а также определяет, каким цветом будет показана ссылка на страницу пользователя в другой wiki - красным или синим. |
| |
Disambiguator | __DISAMBIG__
|
Обозначает страницы решения неоднозначностей. |
| |
Wikibase (client) | __EXPECTED_UNCONNECTED_PAGE__
|
Некоторые вики-страницы не отвечают критериям Викиданных по созданию элементов — например, архивы обсуждений, подстраницы шаблонов и т.д. Чтобы предотвратить попадание вики-страницы в список Special:UnconnectedPages, используйте это волшебное слово в любом месте страницы. Для страниц, которые не соответствуют критериям значимости Викиданных, не должны создаваться элементы. |
| |
DiscussionTools | __ARCHIVEDTALK__
|
Скрывает ссылки "ответить" из обсуждений на заархивированных страницах. |
| |
__NOTALK__
|
Заставляет страницу в пространстве имен обсуждения не рассматриваться как страница обсуждения. |
| ||
ProofreadPage | __EXPECTWITHOUTSCANS__
|
Некоторое содержание страниц вики-ресурсов состоят из списков (например, список изданий или переводы одного и того же произведения) и поэтому не имеют сканов. Чтобы предотвратить попадание этих страниц в список Special:PagesWithoutScans, вставьте в них это волшебное слово. |
| |
Wikibase (client) | {{NOEXTERNALLANGLINKS}}
|
A magic word and a parser function which when invoked, will disable the Wikibase extension for a specific page, or used with parameters can suppress specific interlanguage links produced by the extension. When active, only interlanguage links present in the wikitext are used. |
Переменные
Переменные возвращают сведения о текущей странице, вики-проекте или дате. Синтаксис большинства из них похож на синтаксис шаблонов. Переменные, помеченные как "[Затратная функция]", отслеживаются движком, и возможное число их включений на одной странице ограничено.
Если имя шаблона конфликтует с переменной, будет использоваться эта переменная (поэтому для транскрипции шаблона Template:PAGENAME вам нужно будет написать {{Template:PAGENAME}}
).
В некоторых случаях добавление параметров заставит синтаксический анализатор вызывать шаблон; например, {{CURRENTDAYNAME|x}}
включает Template:CURRENTDAYNAME, а не переменную.
Дата и время
Следующие переменные возвращают текущую дату и время в UTC.
Вследствие кэширования страниц браузером и MediaWiki, эти переменные часто показывают когда страница была закэширована, вместо отображения текущего времени.
Использование этих переменных приводит к кэшированию страниц на более ограниченное количество секунд. Это настраивается в MagicWordFactory.
Значения переменных даты и времени форматируются в зависимости от языковых настроек вики. Начиная с версии 1.19, они зависят от настройки языка конкретной страницы.
Переменная | Результат | Описание | Версия | |
---|---|---|---|---|
Год | ||||
{{CURRENTYEAR}}
|
2024 | Год | ||
Месяц | ||||
{{CURRENTMONTH}}
|
10 | Месяц (номер с дополнением нулями до двузначного числа) | ||
{{CURRENTMONTH1}}
|
10 | Месяц (обычный порядковый номер) | ||
{{CURRENTMONTHNAME}}
|
октябрь | Месяц (название) | ||
{{CURRENTMONTHNAMEGEN}}
|
октября | Месяц (в родительном падеже) | ||
{{CURRENTMONTHABBREV}}
|
окт | Месяц (аббревиатура) |
| |
День | ||||
{{CURRENTDAY}}
|
14 | День месяца (без ведущего нуля) | ||
{{CURRENTDAY2}}
|
14 | День месяца (с ведущим нулём: 01..31) |
| |
{{CURRENTDOW}}
|
1 | День недели (число). От 0 (воскресенье) до 6 (суббота). | ||
{{CURRENTDAYNAME}}
|
понедельник | День недели (название) | ||
Время | ||||
{{CURRENTTIME}}
|
12:05 | Время (24-часовой формат — HH:mm) | ||
{{CURRENTHOUR}}
|
12 | Час (01..24) | ||
Разное | ||||
{{CURRENTWEEK}}
|
42 | Неделя (число) | ||
{{CURRENTTIMESTAMP}}
|
20241014120536 | Отметка времени в формате YYYYMMDDHHmmss |
|
Следующие переменные возвращают значения, аналогичные вышеперечисленным, но используют настройки сервера или значение параметра $wgLocaltimezone .
{{LOCALYEAR}}
{{LOCALMONTH}}
{{LOCALMONTH1}}
{{LOCALMONTH2}}
{{LOCALMONTHNAME}}
{{LOCALMONTHNAMEGEN}}
{{LOCALMONTHABBREV}}
{{LOCALDAY}}
{{LOCALDAY2}}
{{LOCALDOW}}
{{LOCALDAYNAME}}
{{LOCALTIME}}
{{LOCALHOUR}}
{{LOCALWEEK}}
{{LOCALTIMESTAMP}}
Для более тщательного форматирования времени, или чтобы вывести неделю и год в соответствии c ISO-8601, вам может захотеться установить Расширение:Функции парсера , позволяющее использовать функцию парсера #time .
Технические метаданные
Функция | Результат | Описание | Версия | ||
---|---|---|---|---|---|
Сайт | |||||
{{SITENAME}}
|
MediaWiki | Имя сайта ($wgSitename ) | |||
{{SERVER}}
|
//www.mediawiki.org | URL-адрес домена ($wgServer ) | |||
{{SERVERNAME}}
|
www.mediawiki.org | Поддомен или доменное имя (начиная с версии 1.17 больше не зависит от $wgServerName ) | |||
{{DIRMARK}}
|
|
Выводит маркер направления Юникода, соответствующий направлению языка вики-проекта по умолчанию (‎ на сайтах с письменностью слева направо, ‏ — с письменностью справа налево); полезен в текстах с переменным направлением письма. Начиная с версии 1.19, зависит от языка конкретной страницы.
|
| ||
{{ARTICLEPATH}}
|
/wiki/$1 | Относительный путь к статье ($wgArticlePath ). | |||
{{SCRIPTPATH}}
|
/w | Относительный путь к скрипту ($wgScriptPath ). | |||
{{STYLEPATH}}
|
/w/skins | Относительный путь к стилю ($wgStylePath ). |
| ||
{{CURRENTVERSION}}
|
1.43.0-wmf.26 (a37de05) | Версия MediaWiki, на которой работает вики-проект. |
| ||
{{CONTENTLANGUAGE}}
|
en en |
Язык интерфейса по умолчанию ($wgLanguageCode ). |
| ||
Страница | |||||
{{PAGEID}}
|
13403 | Возвращает идентификатор страницы (ID страницы). |
| ||
{{PAGELANGUAGE}} {{#language:{{PAGELANGUAGE}}}}
|
ru русский |
Возвращает язык текущей страницы. Код языка из этой переменной можно преобразовать в его название с помощью {{#language:...}} .
|
| ||
{{TRANSLATABLEPAGE}}
|
Help:Magic words | Возвращает заголовок страницы перевода (страница, с которой переводятся на другие языки), если страница является переводимой (включая переведенные страницы), и ничего, если страница непереводима. |
| ||
|
Translated unit. Language: ru. Not translated unit. Language: en. |
Должен использоваться на переведенной странице внутри тегов <translate> . Возвращает код языка для текущего фрагмента перевода. На странице перевода, если фрагмент был переведён, возвращается язык перевода. В противном случае возвращает исходный язык. Код языка, который возвращает эта переменная, можно преобразовать в имя языка с помощью {{#language:...}} . Должно использоваться только администраторами перевода.
|
| ||
{{PROTECTIONLEVEL:действие}}
|
Возвращает уровень защиты ('autoconfirmed', 'sysop') для заданного переменной действия ('edit', 'move') на текущей странице или пустую строку, если защита не установлена. |
| |||
{{PROTECTIONEXPIRY:действие}}
|
Выводит время окончания защиты (например "20160418155030", "infinity") для данного действия (напр. "edit", "move") на текущей странице. Возвращает "infinity", если защиты нет. |
| |||
{{CASCADINGSOURCES}}
|
[Затратная функция] Возвращает источники любой действующей на данную страницу каскадной защиты. Собственное название страницы не возвращают, если только не включают сами себя. |
| |||
Просмотренная редакция текущей страницы (последняя редакция или выбранная старая редакция) | |||||
{{REVISIONID}}
|
- | Уникальный идентификатор правки В предварительном просмотре он пуст, поэтому сообщение об ошибке можно показать только в предварительном просмотре. Может быть отключено в режиме скряги (все вики WMF) вместо этого возвращается - , если не в предварительном просмотре.
|
| ||
{{REVISIONDAY}}
|
14 | День совершения правки (без ведущего нуля) |
| ||
{{REVISIONDAY2}}
|
14 | День совершения правки (с ведущим нулём) |
| ||
{{REVISIONMONTH}}
|
10 | Месяц совершения правки (с ведущим нулём начиная с версии 1.17+, предыдущие без нуля). |
| ||
{{REVISIONMONTH1}}
|
10 | Месяц совершения правки (без ведущего нуля) |
| ||
{{REVISIONYEAR}}
|
2024 | Год совершения правки |
| ||
{{REVISIONTIMESTAMP}}
|
20241014120515 | Временная метка совершения правки. |
| ||
{{REVISIONUSER}}
|
FuzzyBot | Имя пользователя, внесшего рассматриваемое редактирование, или пользователя, просматривающего редактирование. |
| ||
{{REVISIONSIZE}}
|
114761 | Размер (в байтах викитекста) просматриваемой версии страницы или превью |
| ||
Воздействуют на содержимое страницы | |||||
{{DISPLAYTITLE:заголовок}} {{DISPLAYTITLE:заголовок|noerror}} {{DISPLAYTITLE:заголовок|noreplace}}
|
Позволяет изменять верхний заголовок текущей страницы. Значение должно быть эквивалентно заголовку по умолчанию, можно только изменять произвольно заглавные буквы некоторых частей заголовка (не всех) и заменять пробелы подчёркиваниями (это поведение можно изменить с помощью $manual-wg-restrict-disp-title). Это поведение можно включать и отключать путём изменения значения переменной $manual-wg-allow-disp-title; она была отключена до версии 1.10+ и включена во всех последующих версиях. Если для параметра $wgRestrictDisplayTitle не установлено значение false , значение должно быть эквивалентно заголовку по умолчанию: разрешены только изменения заглавных букв в определенных частях заголовка (не во всех) и замена пробелов символами подчеркивания. Это может быть отключено или включено при помощи $wgAllowDisplayTitle .
Может принимать второй параметр со значениями noerror или noreplace, чтобы подавлять сообщение об ошибке, когда на странице используется несколько displaytitle или чтобы |
(для noerror и noreplace) | |||
{{DEFAULTSORT:ключ}} {{DEFAULTSORTKEY:ключ}} {{DEFAULTCATEGORYSORT:ключ}} {{DEFAULTSORT:ключ|noerror}} {{DEFAULTSORT:ключ|noreplace}}
|
Устанавливает ключ сортировки страницы во всех её категориях по умолчанию. Например, если вставить {{DEFAULTSORT:Smith, John}} в конце страницы John Smith, то по умолчанию страница будет сортироватся в категориях по букве "S". Может принимать второй параметр со значениями noerror или noreplace, чтобы подавлять сообщение об ошибке, когда на странице используется несколько ключей сортировки или чтобы defaultsort ничего не делал, если defaultsort уже указан ранее.
|
((для noerror и noreplace)) |
Статистика
Числа, возвращаемые этими переменными, содержат разделители разрядов (запятая, точка или пробел, в зависимости от языка локализации). Для получения неотформатированных чисел используется флаг «:R» (например, {{NUMBEROFPAGES}}
→ 1 729 292 и {{NUMBEROFPAGES:R}}
→ 1729292).
Используйте "|R" для волшебных слов, для которых требуется параметр типа PAGESINCATEGORY (например, {{PAGESINCATEGORY:Help}}
и {{PAGESINCATEGORY:Help|R}}
или {{PAGESINCATEGORY:Help|subcats}}
и {{PAGESINCATEGORY:Help|subcats|R}}
).
Также применимо к {{PAGESIZE:название страницы}}
, указанному выше.
Числовые значения переменных форматируются в зависимости от языковых настроек вики. Начиная с версии 1.19, они зависят от настройки языка конкретной страницы.
Переменная | Результат | Описание | Версия | |
---|---|---|---|---|
{{NUMBEROFPAGES}}
|
1 729 292 | Количество вики-страниц. |
| |
{{NUMBEROFARTICLES}}
|
63 162 | Количество страниц в основном пространстве , соответствующих критериям статьи. Смотрите Manual:$wgArticleCountMethod для более подробной информации. | ||
{{NUMBEROFFILES}}
|
2761 | Количество загруженных файлов. |
| |
{{NUMBEROFEDITS}}
|
6 688 484 | Общее количество правок. |
| |
{{NUMBEROFVIEWS}}
|
Общее количество просмотров страниц. Обычно бесполезно для вики, использующих кеширование. Убрано в Gerrit change 150699. |
| ||
{{NUMBEROFUSERS}}
|
18 004 676 | Количество зарегистрированных пользователей. |
| |
{{NUMBEROFADMINS}}
|
138 | Количество пользователей в группе sysop. |
| |
{{NUMBEROFACTIVEUSERS}}
|
880 | Количество активных пользователей, на основании критериев, используемых в Special:Statistics. |
| |
{{PAGESINCATEGORY:названиекатегории}} {{PAGESINCAT:названиекатегории}}
|
158 158 |
[Затратная функция] Число страниц (включая все подкатегории и файлы) в заданной категории. Категория:Помощь используется для демонстрации. |
| |
{{PAGESINCATEGORY:категория|all}} {{PAGESINCATEGORY:категория|pages}} {{PAGESINCATEGORY:категория|subcats}} {{PAGESINCATEGORY:категория|files}}
|
158 155 3 0 |
[Затратная функция] Соответственно, количество
в заданной категории. Категория:Помощь используется для демонстрации. |
| |
{{NUMBERINGROUP:название группы}} {{NUMINGROUP:название группы}}
|
22 22 |
Число пользователей определённой группы . (bureaucrat используется для демонстрации) |
| |
{{PAGESINNS:номер}} {{PAGESINNAMESPACE:номер}}
|
отключено | [Затратная функция] Количество страниц в заданном пространстве имён (замените номер на ID нужного пространства имён). Например, {{PAGESINNAMESPACE:14}} выведет количество страниц категорий. {{PAGESINNS:0}} отличается от {{NUMBEROFARTICLES}} тем, что первый включает страницы перенаправления и устранения неоднозначности. По умолчанию отключено, включается с помощью $wgAllowSlowParserFunctions .
|
|
Названия страниц
Переменная | Для текущей страницы | Описание | Версия | |
---|---|---|---|---|
{{FULLPAGENAME}}
|
Help:Magic words/ru | Пространство имён и название страницы (включая все уровни подстраниц). |
| |
{{PAGENAME}}
|
Magic words/ru | Полное название страницы (включая все уровни подстраниц) без пространства имён. | ||
{{BASEPAGENAME}}
|
Magic words | Название страницы без предыдущей подстраницы и без указания пространства имён. Возвращает Title/Foo со страницы Help:Title/Foo/Bar
|
| |
{{ROOTPAGENAME}}
|
Magic words | Имя страницы, корневой к данной. Возвращает Title со страницы Help:Title/Foo/Bar
|
| |
{{SUBPAGENAME}}
|
ru | Название подстраницы. Возвращает Bar со страницы Help:Title/Foo/Bar
Если подстраницы не существует, возвращается значение Для более сложного разделения, используйте функцию |
| |
{{SUBJECTPAGENAME}} {{ARTICLEPAGENAME}}
|
Help:Magic words/ru Help:Magic words/ru |
Полное название страницы для ассоциированных с ней субъектов (например, статья или файл). Используется на страницах обсуждения. |
| |
{{TALKPAGENAME}}
|
Help talk:Magic words/ru | Полное название страницы ассоциированной страницы обсуждения. |
|
Ни на одно из них не влияют изменения отображаемого заголовка с помощью {{DISPLAYTITLE:xxxx}}
; возвращаемые значения являются исходным заголовком страницы.
«Волшебные слова» {{BASEPAGENAME}}
и {{SUBPAGENAME}}
работают только для пространств имён, в которых включены подстраницы. См. $manual-wg-ns-with-subpages, чтобы узнать о включении подстраниц.
Начиная с версии 1.15+, все эти переменные могут принимать параметр, позволяющий указать название страницы, а не только текущую страницу:
{{PAGENAME:Template:Main Page}}
→ Main Page
URL-кодирование названий страниц
Также есть эквиваленты для использования в URL-адресах страниц MediaWiki (со знаками подчёркивания вместо пробелов и с URL-кодированием некоторых символов или заменой на числовые коды HTML):
{{FULLPAGENAMEE}}
{{PAGENAMEE}}
{{BASEPAGENAMEE}}
{{SUBPAGENAMEE}}
{{SUBJECTPAGENAMEE}}
{{ARTICLEPAGENAMEE}}
{{TALKPAGENAMEE}}
{{ROOTPAGENAMEE}}
Заметьте, что {{PAGENAME:...}}
, {{PAGENAMEE:...}}
и {{urlencode:...}}
реализованы по-разному.
Подробнее смотрите в Manual:PAGENAMEE encoding .
Пространство имён
Переменная | Результат | Описание | Версии | |
---|---|---|---|---|
{{NAMESPACE}}
|
Help | Пространство имён (название) (кроме основного пространства имён) | ||
{{NAMESPACENUMBER}}
|
12 | ID пространства имён страницы |
| |
{{SUBJECTSPACE}} {{ARTICLESPACE}}
|
Help Help |
Пространство имён для текущей страницы |
| |
{{TALKSPACE}}
|
Help talk | Пространство имён для текущей страницы обсуждения |
|
Эквиваленты с URL-кодированием (со знаками подчёркивания вместо пробелов и с URL-кодированием некоторых символов):
{{NAMESPACEE}}
{{SUBJECTSPACEE}}
{{ARTICLESPACEE}}
{{TALKSPACEE}}
Начиная с версии 1.15+, эти функции могут в качестве параметра принимать полное имя любой страницы и возвращать пространства имён для неё:
{{NAMESPACENUMBER:MediaWiki}}
→ 0{{NAMESPACE:MediaWiki}}
→ (Страницы в основном пространстве будут возвращены пустыми){{NAMESPACE:Template:Main Page}}
→ Template{{SUBJECTSPACE:Template talk:Main Page}}
→ Template{{ARTICLESPACE:Template talk:Main Page}}
→ Template{{TALKSPACE:Template:Main Page}}
→ Template talk
Параметр не должен совпадать с названием пространства имён:
{{SUBJECTSPACE:Help talk}}
→ ' (Empty)
Разное
Переменная | Результат | Описание | Версии | |
---|---|---|---|---|
{{!}}
|
| | в качестве аргумента шаблона или содержания ячейки таблицы. Ранее для этих же целей использовался Template:!, заменяемый на | .
Для подробного объяснения смотрите Help:Extension:ParserFunctions/ru#Экранирование_символа_|_в_таблицах. |
| |
{{=}}
|
= | Используется для включения знака равенства как части аргумента шаблона или содержимого ячейки таблицы. До того, как это было реализовано в качестве волшебного слова, многие вики использовали Template:= с исходным текстом = .
См. Справка:Расширение:Функции Парсера#Необработанные знаки равенства для дальнейшего объяснения. |
|
Функции парсера
Функции парсера очень похожи на переменные, но принимают один или более аргументов (на самом деле любые магические слова, принимающие аргументы, являются функциями парсера). Имена функций парсера начинают с символа «#» (хеш), чтобы не путать их с шаблонами.
Далее перечислены функции парсера, предоставляемые движком MediaWiki. Функции парсера, добавляемые расширениями (такими, как расширение Расширение:Функции парсера ), приведены на отдельной странице: Справка:Расширение:Функции парсера .
Технические метаданные о другой странице
Функция парсера | Результат (для страницы MediaWiki) |
Описание | Версии | |
---|---|---|---|---|
{{PAGEID: название страницы }}
|
1 | [Затратная функция] Возвращает идентификатор указанной страницы*. |
| |
{{PAGESIZE:название страницы}} {{PAGESIZE: название страницы |R}}
|
105 924 105924 |
[Затратная функция] Возвращает размер указанной страницы в байтах. Для получения «сырого» числа (никак не отформатированного) используйте кодовый параметр «|R ».
|
| |
{{PROTECTIONLEVEL:действие | название страницы}}
|
sysop | [Затратная функция] Выводит уровень защиты (например, "autoconfirmed", "sysop"), установленный для заданного действия (например, "edit", "move") на указанной странице. Возвращает пустую строку, если защита отсутствует. |
| |
{{PROTECTIONEXPIRY: действие | название страницы}}
|
infinity | [Затратная функция] Выводит время окончания защиты (напр. "20160418155030", "infinity") для данного действия (напр. "edit", "move") на указанной странице. Возвращает "infinity", если защиты нет. |
| |
{{CASCADINGSOURCES: page name}}
|
[Затратная функция] Возвращает источники любой действующей на указанную страницу каскадной защиты. Собственное название страницы не возвращают, если только не включают сами себя. |
| ||
{{REVISIONID: название страницы }}
|
6287429 | [Затратная функция] Возвращает уникальный идентификатор последней версии указанной страницы*. |
| |
{{REVISIONDAY: название страницы }}
|
29 | [Затратная функция] День последней правки указанной страницы* (число от 1 до 31). |
| |
{{REVISIONDAY2: название страницы }}
|
29 | [Затратная функция] День последней правки указанной страницы* (число от 01 до 31). |
| |
{{REVISIONMONTH: название страницы }}
|
12 | [Затратная функция] Месяц последней проверенной правки указанной страницы* (с ведущим нулём начиная с версии 1.17+, предыдущие без нуля). |
| |
{{REVISIONMONTH1: название страницы }}
|
12 | [Затратная функция] Месяц последней правки указанной страницы* (число от 1 до 12). |
| |
{{REVISIONYEAR: название страницы }}
|
2023 | [Затратная функция] Год последней правки указанной страницы*. |
| |
{{REVISIONTIMESTAMP: название страницы }}
|
20231229181425 | [Затратная функция] Время последней правки указанной страницы*. |
| |
{{REVISIONUSER: название страницы }}
|
Tropicalkitty | [Затратная функция] Имя пользователя, совершившего последнюю правку указанной страницы*. |
| |
|
Получение фрагментов URL
Функция парсера | Конструкция → Результат | Описание | Версии | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
{{localurl:название страницы}} {{localurl:название страницы
|
{{localurl:MediaWiki}} → /wiki/MediaWiki {{localurl:MediaWiki|printable=yes}} → /w/index.php?title=MediaWiki&printable=yes |
Относительный путь к странице. | |||||||||||||||
{{fullurl:название страницы}} {{fullurl:название страницы {{fullurl:интервики:имя удаленной(сторонней) страницы
|
{{fullurl:Category:Top level}} → //www.mediawiki.org/wiki/Category:Top_level
|
Полная ссылка на страницу, зависимая от используемого протокола, который зависит от $wgServer на локальной вики (и поэтому может или не может начинаться с http(s):// ). Здесь также допустимы интервики-префиксы. Замечание: не ограниченные квадратными скобками (простые) ссылки, зависимые от протокола, не станут активными автоматически.
|
| ||||||||||||||
{{canonicalurl:название страницы}} {{canonicalurl:название страницы {{canonicalurl:интервики:имя удаленной(сторонней) страницы
|
{{canonicalurl:Category:Top level}} → https://www.mediawiki.org/wiki/Category:Top_level
|
Абсолютный путь к заглавию, использующий канонический URL. Также разрешает префиксы интервики. |
| ||||||||||||||
{{filepath:имя файла}} {{filepath:имя файла|nowiki}} {{filepath:имя файла|размер_эскиза}}
|
{{filepath:Wiki.png}} → //upload.wikimedia.org/wikipedia/mediawiki/b/bc/Wiki.png
|
Полный путь к файл или миниатюре (1.18+) файла. |
| ||||||||||||||
{{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 значение по умолчанию изменилось с |
Замена символов, запрещённых к использованию в URL, на %-последовательности (например, пробел будет заменён на %20). Обратите внимание, что выполняющая обратное действие функция urldecode (аналогичная существующей в расширении Extension:StringFunctions ) пока не реализована.
|
| ||||||||||||||
{{anchorencode:строка}}
|
{{anchorencode:x y z á é}} → x_y_z_á_é |
Преобразовать аргумент в вид, пригодный к использованию в URL после символа '#' (якоря) |
|
Ниже приведены эквиваленты, закодированные для использования в URL-адресах MediaWiki (некоторые символы закодированы со знаком процента):
{{localurle:название страницы}}
{{localurle:название страницы|строка_запроса}}
{{fullurle:название страницы}}
{{fullurle:название страницы|строка_запроса}}
{{fullurle:интервики:имя удаленной(сторонней) страницы|строка_запроса}}
{{canonicalurle:название страницы}}
{{canonicalurle:название страницы|строка_запроса}}
{{canonicalurle:интервики:имя удаленной(сторонней) страницы|строка_запроса}}
Пространства имён
Конструкция {{ns:}}
заменяется на название пространства имён на текущем языке, оглавление, каноническое имя или псевдоним.
Конструкции {{ns:}}
6, {{ns:}}
-file и {{ns:}}
-img (старое имя для File namespace) заменяются на "File". На страницах французской википедии конструкция {{ns:}}
-file-de будет считаться корректной, а конструкция {{ns:}}
-file-incorrect (переведённое на немецкий язык слово "File") — нет.
Поэтому {{ns:6}}
, {{ns:File}}
и {{ns:Image}}
(старое название для пространства имён File) возвращают "File".
В вики, где языком содержимого является французский {{ns:Fichier}}
также допустимо, но {{ns:Datei}}
(локализация «File» на немецком языке) — нет.
Основное пространство имен не имеет имени, т. е. {{ns:0}}
возвращает пустую строку.
Для явного обращения к основному пространству имен можно использовать {{int:Blanknamespace}}
, в результате чего получится "(Основное)".
Действие {{nse:}}
аналогично действию функции urlencode с одним отличием: пробелы заменяются на символы "_". Это используется во внешних ссылках.
Пространства имён для статей | Пространства имён для страниц обсуждений | |||
---|---|---|---|---|
Использование | Результат | Использование | Возвращаемое значение | |
{{ns:-2}} / {{ns:Media}}
|
Media | {{ns:-1}} / {{ns:Special}}
|
Special (no talk page) | |
{{ns:0}} / {{ns:}}
|
{{ns:1}} / {{ns:Talk}}
|
Talk | ||
{{ns:2}} / {{ns:User}}
|
User | {{ns:3}} / {{ns:User talk}}
|
User talk | |
{{ns:4}} / {{ns:Project}}
|
Project Varies between wikis |
{{ns:5}} / {{ns:Project talk}}
|
Project talk | |
{{ns:6}} / {{ns:File}} or {{ns:Image}}
|
File | {{ns:7}} / {{ns:File talk}} or {{ns:Image talk}}
|
File talk | |
{{ns:8}} / {{ns:MediaWiki}}
|
MediaWiki | {{ns:9}} / {{ns:MediaWiki talk}}
|
MediaWiki talk | |
{{ns:10}} / {{ns:Template}}
|
Template | {{ns:11}} / {{ns:Template talk}}
|
Template talk | |
{{ns:12}} / {{ns:Help}}
|
Help | {{ns:13}} / {{ns:Help talk}}
|
Help talk | |
{{ns:14}} / {{ns:Category}}
|
Category | {{ns:15}} / {{ns:Category talk}}
|
Category talk |
Не путайте переведённые на ваш язык пространства имён с настраиваемыми пространствами имён.
Форматирование
Функция | Ввод → Результат | Описание | Версия | ||
---|---|---|---|---|---|
|
Неподдерживаемое: В следующих примерах указаны неправильные аргументы с или без использования |
Берёт неформатированное число (арабские цифры без разделителей групп разрядов и с . десятичного разделителя) и выводит его в локализованном наборе цифр, отформатированным с десятичным разделителем и разделителями групп в соответствии с языком страницы.Для обратного действия можно использовать параметр Если вам действительно нужно отформатировать (в соответствии с языковым стандартом википроекта) число в неизвестном формате ввода, вы могли бы попробовать использовать |
| ||
|
|
Форматирует несвязанную дату на основе пользовательского предпочтения «формат даты» и добавляет метаданные, помечая ее как отформатированную дату. Для пользователей, вышедших из системы, а также тех, кто не установил формат даты в своих предпочтениях, датам может быть присвоено значение по умолчанию: mdy , dmy , ymd , ISO 8601 (с учётом регистра). Если формат не указан или является недопустимым, используется формат по умолчанию. Если предоставленная дата не распознается как действительная дата (в частности, если она содержит какие-либо метаданные, например, от вложенного использования этих или аналогичных шаблонов), она отображается без изменений и никакие (дополнительные) метаданные не создаются. Для пользователей, вышедших из системы, и тех, кто не установил формат даты в своих настройках, датам может быть присвоено значение по умолчанию: mdy , dmy , ymd , ISO 8601 (с учетом регистра). Если указаны только месяц и день, действительны только mdy и dmy . Если формат не указан или является недопустимым, используется формат ввода по умолчанию. Если указанная дата не распознается как действительная (в частности, если она содержит какие-либо метаданные, например, из вложенного использования этих или аналогичных шаблонов), она отображается без изменений, и никакие (дополнительные) метаданные не генерируются.
|
| ||
|
{{lc:DATA CENTER}} → data center
|
Строка в нижнем регистре. |
| ||
|
{{lcfirst:DATA center}} → dATA center
|
Строка с первым символом в нижнем регистре. |
| ||
|
{{uc:text transform}} → TEXT TRANSFORM
|
Строка в верхнем регистре. |
| ||
|
{{ucfirst:text tRAnSFORM}} → Text tRAnSFORM
|
Строка с первым символом в верхнем регистре. |
| ||
|
{{padleft:xyz|5}} → 00xyz
|
Вставляет строку символов заполнения (символ, выбранный в третьем параметре; по умолчанию "0") заданной длины (второй параметр) рядом с выбранным базовым символом или переменной (первый параметр). Последние цифры или символы в базе заменяют последние символы в заполнении; т. е. {{padleft:44|3|0}} производит 044. Строка выравнивания может быть обрезана, если её длина не делится нацело на требуемое количество символов.
В версиях до 1.12 использовался только первый символ третьего параметра, но начиная с версии 1.15 используются все символы. Ошибка (исправлено в r45734): — мультибайтовые символы интерпретируются как два символа, что может исказить ширину. Они также не могут использоваться в качестве отступов. |
| ||
|
{{padright:xyz|5}} → xyz00
|
Аналогично padleft , но добавляет отступ с правой стороны.
|
| ||
|
{{bidi:text transform}} → text transform
|
Оборачивает текст соответствующим сценарию маркером направленности (либо слева направо (U+202A), либо справа налево (U+202B)) и символом форматирования направленности (U+202C), чтобы обеспечить безопасность направленности при использовании сочетания сценариев в выполняемом тексте. |
Смотрите также: Extension:StringFunctions
Локализация
Здесь приведены волшебные слова, используемые как основные инструменты локализации. Прочие волшебные слова часто зависят от местной вики и настроек или от выбранного языка: см. в частности #Дата и время, #Форматирование. Расширение:Перевод добавило больше волшебных слов.
Использование этих волшебных слов может быть очень сложным, а документация неполной; больше сведений на PLURAL, GRAMMAR, GENDER.
Использование | Конструкция → Результат | Описание | Версия | |||
---|---|---|---|---|---|---|
{{#language}} {{#language:код языка}} {{#language:код языка|код целевого языка}}
|
{{#language:ar}} → العربية {{#language:ar|en}} → Arabic
|
Полное имя языка для заданного кода языка: собственное имя по умолчанию, имя переводится на целевой язык, если указан код целевого языка. Чтобы перевод работал, должен быть установлен Расширение:CLDR . If no argument is given, returns the name of the target language (for articles, the content language; for messages, the user language). |
| |||
{{#bcp47}} {{#bcp47:language code}}
|
{{#bcp47:sr-ec}} → sr-Cyrl{{#bcp47:zh-yue}} → yue
|
The IETF BCP-47 language tag for the given language code . If no argument is given, returns the tag of the target language (for articles, the content language; for messages, the user language). |
| |||
{{#dir}} {{#dir:language code}} {{#dir:language code|bcp47}}
|
{{#dir:en}} → ltr{{#dir:he}} → rtl{{#dir:sr-Cyrl|bcp47}} → ltr
|
The directionality for the given language code , either rtl or ltr . If the optional second argument is bcp47 , then the first argument is interpreted as a BCP-47 language tag. If no argument is given, returns the directionality of the target language (for articles, the content language; for messages, the user language).
|
| |||
{{PLURAL:2|is|are}}
|
{{PLURAL:0|is|are}} → are{{PLURAL:1*1|is|are}} → is{{PLURAL:21 mod 10|is|are}} → is{{PLURAL:{{#expr:21 mod 10}}|is|are}} → is{{PLURAL:1|is|are}} → is{{PLURAL:2|is|are}} → are{{PLURAL:-1|is|are}} → is{{PLURAL:-2|is|are}} → are{{PLURAL:0.5|is|are}} → are{{PLURAL:1.5|is|are}} → are{{PLURAL:-0.5|is|are}} → are{{PLURAL:-1.5|is|are}} → areДля Русского языка {{PLURAL:5|1=Категория|Категории}} → Категории
|
В зависимости от значения (первый параметр) выводит форму единственного числа (второй параметр) или множественного числа (третий параметр). См. дополнительную документацию на translatewiki.net
Некоторые коды языков (ab, av, ba, bxr, ce, crh_cyrl, cv, inh, koi, krc, kv, lbe, lez, mhr, mrj, myv, ru, sl, tt_cyrl, tyv, udm, xal) используют 3 формы множественного числа (обновление 01.2014):
|
||||
{{GRAMMAR:N|noun}}
|
Выводит заданное слово в правильной грамматической форме (склонении, падеже), согласно коду, указанному после двоеточия. Грамматическая трансформация используется в таких языках как польский. См. также $wgGrammarForms и документацию по грамматике на translatewiki.net. |
| ||||
{{GENDER:username|text for every gender}}
|
(Зависит от указанного пола пользователя) | Переключатель настройки пола в Special:Preferences. Замечание: первый пример ничего не делает. |
| |||
{{int:название сообщения}}
|
{{int:edit}} → Edit (Зависит от языка пользователя; попробуйте: fr • ja) |
Переводит данное интерфейсное (interface) сообщение (пространство имён MediaWiki) на язык пользователя. По поводу msgnw и других волшебных слов — смотрите раздел о модификаторах шаблонов.
Обратите внимание, это может повредить/перепутать ссылки кэша в MediaWiki 1.17 и более ранних версиях, смотрите T16404 |
||||
{{int:editsectionhint|MediaWiki}}
|
{{int:editsectionhint|MediaWiki}} → Edit section: MediaWiki
|
Вы также можете использовать параметры с переводом. Параметры обозначены $1, $2, $3 и т.д. Например, вот сообщение для editsectionhint: Edit section: $1 В этом примере MediaWiki заменяет $1. |
Модификаторы включения
{{Имя страницы|необязательные параметры}}
обычно включает другую страницу, по умолчанию из пространства имен Template:namespace.
Эти волшебные слова меняют это поведение.
Использование | Описание | Версия | |
---|---|---|---|
{{:xyz}}
|
В данном случае двоеточие не является модификатором шаблона, но является приставкой для обозначения основного пространства имен. Поскольку включение по умолчанию использует пространство Шаблон, вы должны использовать {{:UTC}} (вместо {{UTC}}) для включения текста статьи UTC из основного пространства вместо включения Template:UTC.. | ||
{{int:xyz}}
|
То же, что и {{MediaWiki:xyz}}, кроме того, что стандартное сообщение зависит от подстраниц и языка содержимого/пользователя/uselang. Еще одно различие состоит в том, что это не показывается в "Шаблоны, используемые на этой странице:". Показывается как ⧼xyz⧽, если MediaWiki:xyz не существует. Смотрите также Помощь:Системные сообщения . | ||
{{msg:xyz}} {{raw:xyz}}
|
Даже если есть волшебное слово с именем «xyz», используйте Шаблон:xyz, если шаблон не существует (эквивалент {{template:xyz}}). Обычно магические слова имеют приоритет при возникновении конфликта. | ||
{{raw:xyz}}
|
Если $wgEnableScaryTranscluding включен, и это является включением между интервики, то вставляет необработанный вики-текст вместо html из иностранной вики. |
| |
{{msgnw:xyz}}
|
Показывается нераскрытый викитекст (более или менее, подробнее: Справка:Шаблоны ). | ||
{{subst:xyz}}
|
В викитексте тег заменяется на «контент» (только одноуровневая оценка), смотрите Справка:Шаблоны . | ||
{{safesubst:xyz}}
|
Смотрите Справка:Шаблоны . |
Прочее
Использование | Ввод → Результат | Описание | Версия | |
---|---|---|---|---|
{{#special:название служебной страницы}}
|
{{#special:userlogin}} → Special:UserLogin
|
Локализованное имя для служебных страниц. |
| |
{{#speciale:название служебной страницы}}
|
{{#speciale:userlogin}} → Special:UserLogin
|
Локализованное и URL-кодированное имя от канонического имени служебной страницы. |
| |
{{#tag:имя тега
|
Пример для тега <ref> из расширения Cite:
|
Псевдоним для тегов парсера MediaWiki в стиле XML или тегов расширения. Он позволяет предварительное сохранение преобразования кода вики и Расширение:Функции парсера в тегах до обработки тега. Это также предотвращает синтаксический анализ тегов в условных путях, которые не выполняются (например, в операторах #if ). Содержимое между тегами передается как первый параметр, а любые атрибуты тегов могут быть переданы как последующие параметры. Этот пример:
…может быть переписан следующим образом:
|
|
См. также
- О функции парсера
#invoke
см. w:ru:Википедия:Модули