ParserFunctions — расширение, добавляющее новые функции парсера в дополнение к уже имеющимся (см. «Волшебные слова»).
Все функции, добавляемые расширением, имеют вид:
{{#имя_функции: аргумент 1 | аргумент 2}}
Описание[]
Автором расширения является Тим Старлинг, первая его версия была написана и установлена на все проекты Фонда Викимедиа в апреле 2006[1], позже над ним также работали Роберт Роде (Robert Rohde), Росс Макклюр (Ross McClure) и Юрай Шимлович (Juraj Šimlovič)[2]. На служебной «Версия MediaWiki» данное расширение находится в категории «Перехватчики синтаксического анализатора». Сейчас, на Единой платформе, используется версия расширения 1.6.0, на старой платформе использовалась версия расширения 1.4.1.
Функции парсера[]
Функция | Синтаксис |
---|---|
#expr | {{#expr: математическое выражение}}
|
Вычисляет математическое выражение, записанное специальным синтаксисом (см. Справка:Вычисления на mediawiki.org). | |
#if | {{#if: проверяемая строка | текст, если строка непуста | текст, если строка пуста}}
|
#if имеет три аргумента и проверяет первый аргумент на пустоту. Если первый аргумент непустой, то выводится второй аргумент, а если пустой — третий.
| |
#ifeq | {{#ifeq: проверяемая строка | образец для сравнения | текст, если проверяемая строка идентична образцу | текст, если проверяемая строка не идентична образцу}}
|
#ifeq имеет четыре аргумента. Данная функция сравнивает первый и второй аргументы. Если они равны между собой, то выводится третий аргумент, если нет — четвёртый.
| |
#ifexist | {{#ifexist: проверяемый заголовок страницы | текст, если страница с таким заголовком существует | текст, если страницы с таким заголовком не существует}}
|
#ifexist принимает три аргумента: первый — название страницы, второй и третий — некий текст. Функция проверяет наличие страницы с названием, идентичным первому аргументу, и если такая страница существует, то выводится текст второго аргумента, иначе — третьего.
| |
#ifexpr | {{#ifexpr: математическое выражение (синтаксис как в #expr ) | текст, если результат выражения не равен нулю | текст, если результат выражения равен нулю}}
|
#ifexpr вычисляет математическое выражение, и если результатом выражения не является 0, то выводится второй аргумент, иначе — третий.
| |
#iferror | {{#iferror: выражение | текст, если обнаружена ошибка | текст, если ошибка не обнаружена}}
|
Данная функция «перехватывает» ошибку (сообщение с тегом <strong class="error"> ) из первого аргумента. Если обнаружена ошибка, то выводится содержимое второго аргумента, иначе — третьего.
| |
#switch | {{#switch: сравниваемая строка или выражение | значение1 = результат1 | … | значениеn = результатn | значение по умолчанию}}
|
#switch сравнивает сравниваемая строка или выражение с каждым значениеx . Если они идентичны, то выводится соответствующий значению результатx , в противном случае выводится значение по умолчанию
| |
#time | {{#time: формат | время | язык}}
|
Функция позволяет выводить дату и время в заданном формате. Подробнее см. Справка:Расширение:ParserFunctions (раздел #time). | |
#rel2abs | {{#rel2abs: относительный путь | базовый путь}}
|
Данная функция преобразует относительный путь ссылки (с использованием . и ..) в абсолютный. Относительный путь рассчитывается от параметра базовый путь ; если он не указан, то в качестве него выступает полное имя страницы, на которой используется #rel2abs .
| |
#titleparts | {{#titleparts: имя страницы | количество выводимых сегментов | номер первого выводимого сегмента}}
|
Эта функция разделяет заголовок страницы на сегменты, разделённые слешем (/), и затем на выходе возвращает некоторые из этих сегментов. Подробнее см. Справка:Расширение:ParserFunctions (раздел #titleparts). |
Примечания[]
- ↑ Раздел «История установки расширения» на странице Википедии «Википедия: Функции парсера»
- ↑ Исходя из графы «Авторы» на служебной странице «Версия MediaWiki».
Устройство и технология | |
---|---|
MediaWiki | † EmailUser • Вклад • Регистрация • Вход в аккаунт • Служебная • Пространства имён • Патрулирование • Переименование • Удаление / Восстановление / Массовое удаление • Защита |
Расширения | † Автоматическое приветствие • Contact • ParserFunctions • Phalanx • † Автоматическое принятие • Активность участника • Глобальное навигационное меню • Обсуждения • Проверка IP • Кабинет администратора • Конструктор тем • Фильтр злоупотреблений • † Опрос • Комментарии • † Чат • Форум († новый • классический • архаичный) • Блог • † Категории-галереи • Стены обсуждений (Стеночат • Стенофорум) • Европа • Обязательная регистрация • † Новые галереи • † Карты • † Списки TOP-10 • Достижения |
Боты | Программное обеспечение • AutoWikiBrowser • Pywikibot |