Help:Parser functions in templates/ja

テンプレートのパラメーターにパーサー関数を適用する際、既定値を指定するためにパイプ記号 (|) を使用できます. この既定値は、パラメーターが定義されていない時に使用されます. ifパーサー関数で使用すると、未定義のパラメーターから展開されたテキストが真として評価され、予期しない結果になる可能性があります.




 * サンプル A:


 * 結果:




 * サンプル B:


 * 結果:

2 番目の使用法 ( 、サンプル B) は、既定値が空の場合、パラメーターは存在するものの空白類のみで構成されている状況を扱うのに望ましい方法であることが多いです.

未定義のパラメーターのテストと受け渡し
空の可能性のあるパラメーターと未指定のパラメーターを区別するには、 と異なる既定値を使ってそれ自身と比較します. 既定値は異なっていれば問題ではないため、一般的には短いものが選択されます. 以下はすべて同等に動作します:



まれに、パラメーターが指定されていないときと、指定されているが空であるときとで、テンプレートの動作が異なることがあります. このテンプレートが（同じ名前付きパラメーターのセットを使う）ラッパーテンプレートによって使われる場合，未定義のパラメーターが未定義のままであることを保証する一つの方法は以下の通りです（このテクニックは番号付きパラメーターでも機能します）．





receives a defined normal_parameter in all cases. When normal_parameter is defined but empty and when it is undefined,  receives an empty normal_parameter.

By contrast, the  receives a defined sensitive_parameter only when it is indeed defined; when sensitive_parameter is undefined, the   changes the parameter name to sensitive_parameterNULL. The suffixed parameter name must be meaningless to the  for this to work properly.

関連項目

 * Extension:Loops#forargs
 * Extension:Loops#forargs
 * Extension:Loops#forargs