Help:Parser functions in templates/nl

Bij het toepassen van ParserFuncties op sjabloon parameters, kan een verticale streep ("|") worden gebruikt om een standaardwaarde mee te geven, dit wordt gebruikt als een parameter niet is gedefinieerd. Als het in een #if parser functie wordt gebruikt, wordt de niet expandeerde tekst van de ongedefinieerde parameter uiteindelijk 'true', dat kan een onverwacht resultaat zijn.




 * Voorbeeld A:


 * Resultaat:




 * Voorbeeld B:


 * Resultaat:

Het tweede gebruik (, voorbeeld B) met aanwezige lege standaardwaarde is vaak de gewenste manier om situaties af te handelen als er een parameter is, maar dat die alleen uit lege ruimte bestaat.



Testen en doorgeven ongedefinieerde parameters
To distinguish a possibly empty parameter from an unspecified one, compare it to itself using  and different defaults. What the defaults are does not matter as long as they are different, so they are typically chosen to be short. The following all work equivalently:



In rare cases, a template behaves differently when a parameter is unspecified compared to when it is specified but empty. When this template is used by a wrapper template (which uses the same set of named parameters), one way to ensure undefined parameters remain undefined is as follows (the technique also works with numbered parameters):





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.



Zie ook

 * Extension:Loops#forargs