Эта страница справки представляет собой практическое руководство . В нем подробно описаны процессы или процедуры некоторых аспектов норм и практики Википедии. Это не одна из политик или рекомендаций Википедии , и может отражать различные уровни консенсуса и проверки . |
Волшебные слова (включая функции синтаксического анализатора , переменные и переключатели поведения ) - это особенности вики-разметки, которые дают инструкции лежащему в основе Википедии программному обеспечению MediaWiki . Например, волшебные слова могут подавлять или позиционировать оглавление, отключать индексацию внешними поисковыми системами и производить вывод динамически на основе текущей страницы или определяемой пользователем условной логики. Некоторые из этих функций особенно полезны для шаблонов .
Эта страница представляет собой краткий справочник по волшебным словам. Для получения дополнительной информации обратитесь к основной документации MediaWiki:
- mw: Справка: Волшебные слова : Все стандартные волшебные слова, включая "стандартные" функции синтаксического анализатора.
- mw: Help: Extension: ParserFunctions : Дополнительные функции синтаксического анализатора, включая условные выражения.
Общая информация
В общем, есть три типа волшебных слов
- Переключатели поведения : часто появляются в двойных подчеркиваниях, прописных буквы, например,
__NOTOC__
. Они изменят поведение страницы, а не вернут значение. - Функции парсера : все в нижнем регистре. За функцией синтаксического анализатора будут следовать параметры, разделенные двоеточием и вертикальной чертой, например
{{#ifexpr:Y|Yes|No}}
, заключенные в двойные фигурные скобки. Они примут значение и вернут значение. - Переменные : это все прописные, например,
{{PAGENAME}}
. Переменная будет заключена в двойные фигурные скобки и вместо нее вернет значение.
Программа обычно интерпретирует волшебные слова следующим образом.
- Волшебные слова чувствительны к регистру .
- Для удобства чтения достаточно свободного пространства . Он будет удален из начала и конца их ключевых слов и параметров (как это также делается внутри шаблонов).
- Они могут быть включены через , даже переменные «о текущей странице». Это обеспечивается порядком разбора.
- Вместо того, чтобы волшебным образом преобразовываться в инструкции HTML, теги удаляют это волшебство, поэтому волшебное слово может само отображаться (документироваться), например, или .
<nowiki>
<nowiki>{{#magic:}}</nowiki>
{{#magic:<nowiki />}}
Волшебные слова по сравнению с шаблонами:
- Как с помощью шаблонов, волшебные слова могут быть включены через и замещенные .
- Названия волшебных слов специально выбраны так, чтобы они не были похожи на названия шаблонов, и наоборот. Многие имена функций синтаксического анализатора будут начинаться с
#
(решетки), но имена шаблонов не будут начинаться с символа#
, и, вероятно, не будут заканчиваться:
(двоеточием) или быть полностью прописными. - Синтаксис первого параметра отличается. В
{{#magic: p1 | p2 | p3}}
, это имя,#magic
за которым следует:
обязательный входной параметр без пробелаp1
. С шаблоном неp1
является обязательным, и ему предшествует|
(вертикальная черта) вместо:
, например{{template|p1}}
.
Переключатели поведения
Выключатель | Описание |
---|---|
__TOC__ | Помещает оглавление страницы (оглавление) в позицию слова. |
__FORCETOC__ | Заставляет TOC отображаться в его позиции по умолчанию. Может использоваться в любом месте страницы. |
__NOTOC__ | Подавляет отображение оглавления страницы. Может использоваться в любом месте страницы. |
__NOEDITSECTION__ | Скрывает ссылки "изменить", как правило, рядом со всеми заголовками на странице. Чтобы скрыть ссылку редактирования рядом с определенным заголовком, укажите заголовок, используя, например, HTML-тег, такой как, а не обычный вики-синтаксис знаков равенства (например ).<h2>heading</h2> == heading == |
__NEWSECTIONLINK__ | На страницах без обсуждения добавляет ссылку «Новый раздел» как средство добавления нового раздела на страницу. |
__NONEWSECTIONLINK__ | Удаляет ссылку «Новый раздел» (ссылка «добавить-новый-раздел») на страницах обсуждения. |
__NOGALLERY__ | Заменяет эскизы на странице категории обычными ссылками. |
__HIDDENCAT__ | Делает категорию скрытой при включении на страницу этой категории. |
__INDEX__ | Дает указание поисковым системам проиндексировать страницу. |
__NOINDEX__ | Указывает поисковым системам не индексировать страницу. См. Википедия: Управление индексированием поисковой системы . |
__STATICREDIRECT__ | Препятствует по ссылке на перенаправление страницы из обновляется автоматически , когда страница , на которую он перенаправляет перемещается (и «Обновить все перенаправления , которые указывают на оригинальное название» выбрано). Также дает указание ботам интервики обращаться со страницей как со статьей. |
__DISAMBIG__ | Отмечает страницу как страницу разрешения неоднозначности , добавляет ее в Special: DisambiguationPages и помещает внутренние ссылки в Special: DisambiguationPageLinks . (См. Mw: Extension: Disambiguator .) |
{{DISPLAYTITLE:title}} | Используется для изменения отображаемой формы заголовка страницы. |
{{DEFAULTSORT:sortkey}} | Устанавливает ключ по умолчанию (индекс), по которому страница категоризируется. |
{{NOEXTERNALLANGLINKS}} | (эквивалент {{NOEXTERNALLANGLINKS | *}} ) Подавляет автоматическое включение межъязыковых ссылок Викиданных в левую часть страницы. Ссылки на определенные, а не на все языки могут быть подавлены с помощью {{NOEXTERNALLANGLINKS | список }}, где список трубы - разделители список языковых кодов (например , {{NOEXTERNALLANGLINKS | фр | эс | JA}} подавить французский ( "FR"), испанский ( "эс") и японский ( "JA") межъязыковые ссылки). |
Переменные
Переменная имени страницы | Выход | Описание |
---|---|---|
{{FULLPAGENAME}} | Справка: Волшебные слова | Каноническое имя страницы . Строка заголовка . Заголовок, если регистр букв не изменен на {{DISPLAYTITLE}} . |
{{PAGENAME}} | Волшебные слова | Строка заголовка, исключая пространство имен . |
{{BASEPAGENAME}} | Волшебные слова | Заголовок родительской страницы, исключая пространство имен. |
{{ROOTPAGENAME}} | Волшебные слова | Заголовок самого верхнего родителя (перед всеми вложенными страницами), исключая пространство имен. |
{{SUBPAGENAME}} | Волшебные слова | На подстранице, крайняя правая часть текущего заголовка; более высокие подстраницы отображаются как обратные ссылки . |
{{ARTICLEPAGENAME}} | Справка: Волшебные слова | Заголовок тематической страницы, связанной с текущей страницей. Они полезны на страницах обсуждения (но см. Примечание о страницах обсуждения категорий). |
{{SUBJECTPAGENAME}} | Справка: Волшебные слова | |
{{TALKPAGENAME}} | Help talk: волшебные слова | Заголовок страницы обсуждения, связанной с текущей страницей. Полезно на тематических страницах. |
{{NAMESPACENUMBER}} | 12 | Номер пространства имен текущей страницы. |
{{NAMESPACE}} | Помощь | Пространство имен заголовка. |
{{ARTICLESPACE}} | Помощь | На странице обсуждения - часть пространства имен заголовка связанной тематической страницы. |
{{SUBJECTSPACE}} | Помощь | |
{{TALKSPACE}} | Помогите поговорить | Пространство имен страницы обсуждения, связанной с текущей страницей. |
{{FULLPAGENAMEE}}, {{PAGENAMEE}}, ( И т.д.) | Справка: Magic_words, Magic_words и т. Д. | Добавление E в конце вышеуказанных переменных отображает приведенное выше кодирование для использования в URL-адресах MediaWiki (то есть с подчеркиванием, заменяющим пробелы). |
{{SHORTDESC}} | Работает только в англоязычной Википедии, где на мобильных платформах под заголовком статьи отображается краткое описание. |
Примечание. Указанные выше волшебные слова также могут принимать параметр для анализа значений на странице, отличной от текущей. Для :передачи параметра используется двоеточие ( ), а не канал ( |), который используется в шаблонах, например {{MAGICWORD:value}}. Например, {{TALKPAGENAME:Wikipedia:MOS}}возвращаетОбсуждение в Википедии: MOS на любой странице.
Примечание. В пространствах имен «Категория» и «Обсуждение категорий» для вики-ссылки (некоторых) переменных имени страницы может потребоваться префикс двоеточия, чтобы избежать нежелательной категоризации.
Переменная сайта | Пример | Описание |
---|---|---|
{{SITENAME}} | Википедия | |
{{SERVER}} | //en.wikipedia.org | |
{{SERVERNAME}} | en.wikipedia.org | |
{{SCRIPTPATH}} | / w | |
{{CURRENTVERSION}} | 1.36.0-WMF.34 (c15bb00) | Возвращает текущую версию MediaWiki. |
Другие переменные по типу
Дата и время | Данные ревизии | Статистика | ||
---|---|---|---|---|
|
|
|
- a Показывает последнего пользователя, редактировавшего страницу. Невозможно показать пользователю просматривающую страницу из-за технических ограничений.
Функции парсера
Метаданные
Функция | Описание |
---|---|
{{PAGEID}} | Уникальный идентификационный номер страницы. |
{{PAGESIZE:fullpagename}} | Размер именованной страницы в байтах. |
{{PROTECTIONLEVEL:action|fullpagename}} | Уровень защиты, присвоенный действию («редактировать», «переместить» и т. Д.) На указанной странице. |
{{PROTECTIONEXPIRY:action|fullpagename}} | Срок действия защиты назначен действию («редактировать», «переместить» и т. Д.) На указанной странице. |
{{PENDINGCHANGELEVEL}} | Уровень защиты отложенных изменений на текущей странице. |
{{PAGESINCATEGORY:categoryname}} | Количество страниц в категории с именем categoryname . Каждая подкатегория считается одним элементом. |
{{NUMBERINGROUP:groupname}} | Количество пользователей в группе пользователей с именем groupname . |
Чтобы выводить числа без разделителей запятой (например, как «123456789», а не «123,456,789»), добавьте параметр |R.
Форматирование
Функция | Описание |
---|---|
{{lc:string}} | Преобразует все символы в строке в нижний регистр. |
{{lcfirst:string}} | Преобразует первый символ строки в нижний регистр. |
{{uc:string}} | Преобразует все символы в строке в верхний регистр. |
{{ucfirst:string}} | Преобразует первый символ строки в верхний регистр. |
{{formatnum:unformatted_number}} {{formatnum:formatted_num |R}} | Добавляет разделители запятой к unformatted_number (например, 123456789 становится 123,456,789). Чтобы удалить такое форматирование, используйте ( например, выдает 7654321).{{formatnum:formatted_number|R}}{{formatnum:7,654,321|R}} |
{{#dateformat:date|format}} {{#formatdate:date|format}} | Форматирует дату в соответствии с предпочтениями пользователя; значение по умолчанию может быть задано как дополнительный чувствительный к регистру второй параметр для пользователей без предпочтения даты; может преобразовать дату из существующего формата в любой из dmy , mdy , ymd или ISO 8601 форматов, с предпочтением пользователя перекрывая заданный формат. |
{{padleft:xyz|stringlength}} {{padright:xyz|stringlength}} {{padleft:xyz|length|padstr}} {{padright:xyz|length|padstr}} | Заполните нулями «0» вправо или влево, чтобы заполнить заданную длину; альтернативная строка заполнения может быть указана в качестве третьего параметра; повторяющаяся строка заполнения ( padstr ) будет обрезана , если ее длина не делит равномерно необходимое количество символов. |
{{plural:N|singular|plural}} | Выводит единственное число, если N равно 1, иначе выводит множественное число . См. Документацию на mediawiki.org для получения более подробной информации. |
{{#time:format|object}} {{#timel:format|object}} {{#time:d F Y|date|langcode}} | Используется для форматирования даты и времени, для формата ISO, точек или названий месяцев на английском языке. #timelосновано на местном времени, как определено для каждой вики; для английской Википедии это идентично #time. Необязательный третий параметр - это код языка вывода (французский, немецкий, шведский: fr, de, sv и т. Д.). Пример финский: {{#time:d F Y|June 30, 2016|fi}}показывает: 30 kesäkuu 2016 (июнь). ISO на немецкий язык: {{#time:d. M Y|1987-10-31|de}}показывает: 31. Okt. 1987. Коды форматов см. В: mw: Help: Extension: ParserFunctions ## time . Используйте формат, {{#time: H:i, j F Y (e)|...}}соответствующий формату, используемому метками времени в подписях. |
{{gender:user|m_out|f_out|u_out}} | Выходы m_out , f_out или u_out в зависимости от того указан пол в пользователя предпочтений «s является, соответственно, мужской, женский или неопределенные. Доступны и другие варианты перестановки параметров, см. Mw: Help: Magic words # пол и translatewiki: Gender . |
{{#tag:tag|content with magic}} | Единственный способ оценить волшебные слова внутри тега , чтобы сгенерировать . Также обрабатывает атрибуты тегов.<tag>magic</tag> |
Пути
Функция | Описание |
---|---|
{{localurl:fullpagename |query}} | Относительный путь к имени страницы. Параметр запроса не является обязательным. |
{{fullurl:fullpagename |query}} | Абсолютный путь без префикса протокола (т.е. без « http: » и т. Д.) К имени страницы. Параметр запроса не является обязательным. |
{{canonicalurl:fullpagename |query}} | Абсолютный путь, включая префикс протокола, к имени страницы. Параметр запроса не является обязательным. |
{{filepath:filename}} | Абсолютный путь к медиа - файла имя файла . |
{{urlencode:string}} | Кодирует строку для использования в строках запроса URL; {{urlencode:test string}}, например, выдает: test + string. Чтобы закодировать строку для использования в путях URL или именах страниц MediaWiki, добавьте, соответственно, |PATH или |WIKI (для создания «test% 20string» или «test_string»). |
{{anchorencode:string}} | Ввод закодирован для использования в якорях раздела URL MediaWiki . |
{{ns:n}} | Возвращает имя пространства имен , индекс которого равен n . Для URL-адресов MediaWiki используйте {{nse:}}. |
{{#rel2abs:path}} | Преобразует относительный путь к файлу в абсолютный путь. |
{{#titleparts:fullpagename|number|first segment}} | Разбивает полное имя страницы (заголовок) на это количество сегментов. |
Условный
Функция | Описание |
---|---|
{{#expr:expression}} | Оценивает выражение (см. M: Справка: Расчет ). |
{{#if:string |result1 |result2}} | Выходы result2 если строка является пустой , в противном случае выходы result1 . |
{{#ifeq:string1|string2 |result1 |result2}} | Выходы результат1 , если строка1 и строка2 равны ( в алфавитном порядке или численно), в противном случае выходы результат2 . |
{{#iferror:test_string |result1 |result2}} | Выводит результат1, если test_string генерирует ошибку синтаксического анализа, в противном случае выводит результат2 . |
{{#ifexpr:expression |result1 |result2}} | Выводит результат1, если выражение истинно, иначе выводит результат2 . |
{{#ifexist:pagetitle |result1 |result2}} | Выводит результат1, если страница [[ pagetitle ]] существует, иначе выводит результат2 . Обратите внимание, что подчеркивания необходимы для пробелов в пространствах имен. |
{{#switch:string |c1=r1 |c2=r2 ... |default}} | Выводит r1, если строка - c1 , r2, если строка - c2 , и т. Д., Иначе выводит значение по умолчанию (если предусмотрено). |
Если в этих условных функциях пустые безымянные параметры должны анализироваться как пустые, а не как текст (т.е. как пустые, а не как текст "{{{1}}}", "{{{2}}}" и т. Д.) .), им потребуются замыкающие трубы (т.е. {{{1|}}}, {{{2|}}}и т.д., а не {{{1}}}, {{{2}}}и т.д.).
- Для использования этих функций в таблицах см. Справка: Условные таблицы .
Другой
Функция | Описание |
---|---|
{{#babel:code1|code2|...}} | Визуализируйте wp: ящики пользователей, говорящие о ваших языковых навыках. Улучшает {{ Babel }} (альтернатива). |
{{#categorytree:category|...}} | Перечислить страницы в категории рекурсивно. |
{{#coordinates:arg1|arg2|...}} | Сохраните координаты объекта GeoData в базе данных страницы. Используется в {{ corre }}. |
{{#invoke:module|function|arg1|...}} | Используйте Scribunto для включения шаблона lua , например, функции replace в модуле String . |
{{#language:code1|code2}} | Выведите имя, представленное кодом языка, например en → English . Печатайте на языке 2, если он указан. |
{{#lst:}} {{#lsth:}} {{#lstx:}} | Три способа включить раздел страницы . |
{{#property:arg1|arg2|...}} | Включите свойство ( Викиданные ) из именованного объекта вместо значения по умолчанию на странице. |
{{#related:...}} | Ссылки на похожие темы, чтобы заинтересовать читателей. (Бета-функция.) |
{{#section:}}{{#section-h:}}{{#section-x:}} | Псевдонимы для {{#lst:}} {{#lsth}} {{#lstx}}(см. Выше). |
{{#statements:arg1|...}} | Отобразите значение любого утверждения, включенного в элемент. |
{{#target:fullpagename}} | Отправьте сообщение в список страниц обсуждения на полной странице, используя функцию MassMessage . |
{{int:pagename}} | Transclude в интерфейсе сообщения, т.е. ИмяСтраница в MediaWiki имена |
Смотрите также
- Справка: магические ссылки для ISBN, PMID и RFC (все устарели)
- mw: Локализация
- mw: Руководство: Расширение разметки вики
- CoreParserFunctions.php
- wikEd , редактор MediaWiki с подсветкой синтаксиса для шаблонов и функций парсера
- Настройки → Гаджеты → Редактирование → Подсветка синтаксиса
- Настройки → Бета-функции → Подсветка синтаксиса Wiki
- Special: версия , см. Последний раздел «Перехватчики функций парсера»: список, который должен включать все волшебные слова на этой странице.
- {{ Ifexist not redirect }}, работает с выражением {{#ifexist:}}, позволяя по-разному идентифицировать и анализировать перенаправления