Mediawiki 维基百科if语句不起作用

Mediawiki 维基百科if语句不起作用,mediawiki,wikipedia,mediawiki-templates,Mediawiki,Wikipedia,Mediawiki Templates,这是我的模板:测试 id1: {{{#if: {{{id1}}} | {{{id1}}} | text1}}} <br> id2: {{{#if: {{{id2}}} | {{{id2}}} | text2}}} <br> id3: {{{#if: {{{id3}}} | {{{id3}}} | text3}}} <br> id4: {{{#if: {{{id4}}} | {{{id4}}} }}} <br> <br> 我的测试页面的

这是我的模板:测试

id1: {{{#if: {{{id1}}} | {{{id1}}} | text1}}} <br>
id2: {{{#if: {{{id2}}} | {{{id2}}} | text2}}} <br>
id3: {{{#if: {{{id3}}} | {{{id3}}} | text3}}} <br>
id4: {{{#if: {{{id4}}} | {{{id4}}} }}} <br>
<br>
我的测试页面的输出(用户看到的)是:

我希望输出为:

id1: 123
id2: text2
id3: text3
id4:
我做错了什么?为什么这不输出我想要的? 编辑:
我使用的是mediawiki版本mediawiki-1.30.0。

当没有给定参数时(对于示例包含的
id3
id4
id2
为空,但给定)
{{{id3}}
计算结果为文本
{{{id3}}
。这是
#if
条件下的真实值

改为使用
{{{id3}}
,它在管道后面有一个默认值“when not given”,在这里它是空的,并且在
#if
条件下被视为falsy。考虑

id1: {{{id1|text1}}}<br>
id2: {{{id2|text2}}}<br>
id3: {{{id3|text3}}}<br>
id4: {{{id4|}}}<br>
由于您希望在给定参数但为空时获得默认值,因此使用

id1: {{#if: {{{id1|}}} | {{{id1}}} | text1}} <br>
id2: {{#if: {{{id2|}}} | {{{id2}}} | text2}} <br>
id3: {{#if: {{{id3|}}} | {{{id3}}} | text3}} <br>
id4: {{#if: {{{id4|}}} | {{{id4}}} }} <br>
id1:{{{#if:{{{{id1}}}}{{{id1}}}}}文本1}}
id2:{{{#如果:{{{id2}}}{{{id2}}}}}{text2}}
id3:{{{#如果:{{{id3}}}{{{id3}}}}{text3}}
id4:{{{#如果:{{{id4}}}}{{{id4}}}}

除非您的版本与Wikipedia上使用的版本不同,否则它必须是
{{{if
,而不是
{{{{if
。您还可以设置一个默认值,以便在值不存在时,输出为空:
{{id}default}
,因此对于空的默认值,请使用
{{{id}}}
。这确保了如果未定义
id
,则if语句中输出/使用的值为空。我尝试删除一个{。现在输出为id1:{{{if:123{123}text1}。{{{id}}和{{id}DEFAULT}也不起作用。我使用的是mediawiki-1.30.0。您使用的哪个版本?能否复制上给出的示例?
id1: {{{id1|text1}}}<br>
id2: {{{id2|text2}}}<br>
id3: {{{id3|text3}}}<br>
id4: {{{id4|}}}<br>
id1: 123
id2:
id3: text3
id4: 
id1: {{#if: {{{id1|}}} | {{{id1}}} | text1}} <br>
id2: {{#if: {{{id2|}}} | {{{id2}}} | text2}} <br>
id3: {{#if: {{{id3|}}} | {{{id3}}} | text3}} <br>
id4: {{#if: {{{id4|}}} | {{{id4}}} }} <br>