「テンプレート:Ifempty」の版間の差分
細 (「Template:Ifempty」の保護レベルを変更しました: 影響が特に大きいテンプレート ([編集=管理者のみ許可] (無期限) [移動=管理者のみ許可] (無期限))) |
細 (1版 をインポートしました) |
(相違点なし)
|
2018年10月24日 (水) 16:17時点における最新版
40x40px | このテンプレートは360,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}}
この解説は、テンプレート:Ifempty/docから呼び出されています。 (編集 | 履歴) 編集者は、このテンプレートをサンドボックス (作成 | 複製)とテストケース (作成)で試すことができます。(解説) /docのサブページにカテゴリを追加してください。 このテンプレートのサブページ一覧。 |