Шаблон:Ifempty

Материал из Народные Сказки
Документация

Шаблон {{Ifempty}} создан для использования в других шаблонах РуСказок. Он принимает до девяти параметров и возвращает первый из них, который имеет какое-либо значение. То есть, возвращает первый из вводимых параметров, который определён (не нулевой) и не пуст. Типичный пример использования:

{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}

В параметрах |до = и |после = можно задать предшествующий и последующий текст.

Предыстория[править код]

Движок MediaWiki не возвращает значение по умолчанию для пустых параметров. Таким образом, {{{logo|default.svg}}} не возвратит «default.svg», если шаблон был вызван таким образом: {{Template|logo=}}.

Обычным обходом таких проблем является что-то наподобии этого:

{{#if: {{{logo|}}} | {{{logo}}} | default.svg }}

Но этот способ становится сложным, если вы хотите проверить несколько параметров:

{{#if: {{{logo|}}} | {{{logo}}} | {{#if: {{{image|}}} | {{{image}}} | default.svg }}}}

В этом случае вам удобнее использовать данный шаблон:

{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}

Внимание! Параметры к {{Ifempty}} должны использовать палочку "|" наподобии такого: {{{logo|}}}. В другом случае {{Ifempty}} будет заполнен и возвратит строку «{{{logo}}}», если logo не будет определён.

Примеры[править код]

Код Результат Комментарий
{{Ifempty|}} Возвращает пустую строку.
{{Ifempty|раз}} раз Возвращает первый параметр, который определён и не пуст.
{{Ifempty|раз|два}} раз
{{Ifempty|раз|два|три|четыре}} раз
{{Ifempty||два}} два Первый параметр был пуст или не определён, используем второй.
{{Ifempty||два|три|четыре}} два
{{Ifempty||два||четыре}} два
{{Ifempty||||четыре}} четыре
{{Ifempty|||||пять}} пять Принимаем только 4 параметра, так что в результате будет пустая строка.
{{Ifempty|}} Единственный параметр пуст или не определён, возвращаем пустую строку.
{{Ifempty||||}} Возвращаем пустую строку.
{{Ifempty|||три}} три
{{Ifempty|{{{1}}}|{{{2}}}|три}} {{{1}}} Ошибка. Обратите внимание на отсутствие палочки "|" у первых двух параметров.
{{Ifempty||два}} два
{{Ifempty|{{{logo}}}|два}} {{{logo}}} Ошибка. Обратите внимание на отсутствие палочки "|" у первого параметра.
{{Ifempty|||три|до=<префикс>|после=<постфикс>}} <префикс>три<постфикс> Префикс и постфикс выводятся, если хотя бы один нумерованный параметр задан.
{{Ifempty||||до=<префикс>|после=<постфикс>}}