Help:Parser functions in templates/diq

From MediaWiki.org
Jump to: navigation, search
This page is a translated version of the page Help:Parser functions in templates and the translation is 22% complete.

Outdated translations are marked like this.
Other languages:
العربية • ‎català • ‎Deutsch • ‎Zazaki • ‎English • ‎español • ‎suomi • ‎français • ‎italiano • ‎日本語 • ‎polski • ‎português • ‎português do Brasil • ‎русский • ‎Türkçe • ‎українська
PD Not: key kı şıma na per vırnê, şıma iştirakanê xo serbest vıradayışi CC0 bın dı qebul kenê. Pera destekê Public Domain Help Pages ra melumat bıvinê
PD

ParserFunctions eklentisiyle gelen ayrıştırıcı işlevleri şablonlara uygularken, bir parametre için değer girilmediğinde ne olacağını belirleyebilmek amacıyla, varsayılan değer olarak boş bir dizge belirtmek için pipet karakteri ("|") kullanılabilir.

Used in an #if parser function, the unexpanded text from the undefined parameter will evaluate as true, which may be an unexpected result.

Testing parameters with and without default values
Parameter {{{1}}}, {{{param}}} {{{1|}}}, {{{param|}}} {{#if:<parameter>|True|False}}
Description Example, unnamed and named {{{1}}}, {{{param}}} {{{1|}}}, {{{param|}}}
Undefined. More appropriate for use in named parameters. {{template}} {{{1}}} True False
Defined, but empty or null. {{template|}}, {{template|1=}}, {{template|param=}} False False
Defined, non-empty, and non-null. {{template|value}}, {{template|1=value}}, {{template|param=value}} value value True True
  • {{{1}}}
Örnek A
{{#if: {{{1}}} | Parametre 1 tanımlı değil ya da tanımlı ve boş değil | Parametre 1 boş. Sadece boşluk karakterleri veya boş dizgeler vs. içeriyor.}}
Sonuç
Parametre 1 tanımlı değil ya da tanımlı ve boş değil
  • {{{1|}}}
Örnek B
{{#if: {{{1|}}} | Parametre 1 tanımlı ve boş değil | Parametre 1 tanımlanmamış veya tanımlanmış ama boş. Sadece boşluk karakterleri veya boş dizgeler vs. içeriyor.}}
Sonuç
Parametre 1 tanımlanmamış veya tanımlanmış ama boş. Sadece boşluk karakterleri veya boş dizgeler vs. içeriyor.

Parametre tanımlı ama yalnızca boşluk karakterinden oluşuyorsa genelde ikinci kullanım ({{{1|}}}) tercih edilir.

Testing and passing undefined parameters[edit]

To distinguish a possibly empty parameter from an unspecified, one, compare it to itself using {{#ifeq:}} 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:

{{#ifeq:{{{v|+}}}|{{{v|-}}}| v was defined (and may be empty) | v was not defined }}
{{#ifeq:{{{v|}}}|{{{v|-}}}| v was defined (and may be empty) | v was not defined }}
{{#ifeq:{{{v|}}}|{{{v}}}| v was defined (and may be empty) | v was not defined }}

Nadiren, tanımlanmamış bir parametrede başka, tanımlı ama boş bir parametrede başka birşey yapması istenen şablonlar olabilmektedir. Bu şablonlar (aynı parametreleri kullanan) başka bir şablon içinde kullanıldığında, tanımlanmamış parametrelerin kullanıldığı şablonda da tanımlanmamış olarak kalmasını sağlamak için izlenebilecek yol aşağıdadır (bu yöntem numaralı parametrelerle de çalışır):

{{wrapped_template|
normal_parameter={{{normal_parameter|}}}|
sensitive_parameter{{#if:{{{sensitive_parameter|}}}||NULL}}={{{sensitive_parameter}}}
}}

Yukarıdaki koda göre, başka_şablon, şu iki durumda da tanımlanmış ama boş bir normal parametre algılar:

  • normal_parametre tanımlanmış ama boş olduğunda
  • veya tanımlanmamış olduğunda (çünkü tanımlanmadığında "başka_şablon"u kullanan şablon tarafından varsayılan olarak boş değer atanır).

Ancak başka_şablon, hassas_parametreyi sadece gerçekten tanımlanmış olduğunda tanımlı olarak algılar; çünkü #ifeq, başka_şablondaki parametreyi, eğer tanımlanmamışsa "hassas_parametrex" olarak değiştiriyor.

The suffixed parameter name must be meaningless to the wrapped_template for this to work properly.

Ayrıca bakınız[edit]