テンプレート:Ifempty
このテンプレートは460,000以上のページで使われています。 余計な混乱やサーバーへの負荷を避けるために、どんな変更でも最初はテンプレートのサンドボックス・サブページ、テストケース・サブページもしくはあなた自身の利用者スペースのページで試すべきです。そうすれば、試した変更を1度の編集でこのテンプレートに加えることができます。しかし、最初にあなたの提案した変更を、この項目のノートで議論するようにお願いします。 |
30px | Luaモジュールを使用しています: |
このテンプレートは他のテンプレート内で使用します。引数のうち、最初に中身の存在する引数を表示します。
使用例
{{ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}
この場合、
- logo が指定されていれば、logo の値を
- logo が指定されておらず image が指定されていれば、image の値を
- logo も image も指定されていなければ、default.svg を
表示します。
解説
MediaWikiにおいてテンプレート変数を処理する際、空の呼び出しをされた変数は、デフォルト値を返しません。例えば、Template:Template
に{{{logo|default.svg}}}
という処理があり、これを{{template|logo=}}
と呼び出した場合、"default.svg"
ではなく、空の値が返ってきます。
この問題を回避するためには、条件文を用いて以下のように記述します。
{{ #if: {{{logo|}}} | {{{logo}}} | default.svg }}
別の変数が組み合わさった場合は、以下のように記述します。
{{ #if: {{{logo|}}} | {{{logo}}} | {{ #if: {{{image|}}} | {{{image}}} | default.svg }} }}
これを本テンプレートを用いて、以下のように記述できます。
{{ ifempty | {{{logo|}}} | {{{image|}}} | default.svg }}
関連項目
- {{cond}}