如果未使用变量,则删除 Wiki 模板中的行

问题描述 投票:0回答:1

我使用 mediawiki 在网站上创建了一个模板,如下:

{| style="width:250px; font-size: 95%;  border:1px solid #eaecf0; background-color:#f8f9fa; box-shadow: 0 1px 2px 1px rgba(0,0,0,0.02); color:black; margin-left:1em; padding:10px; float:right; clear:right; text-align: left;"
!style="text-align: center; background-color:#ffb555; padding:5px;" colspan="2" | <span style="font-size: 1.2rem;"><strong>{{{name}}}<strong><span>
|-
!colspan="2" | [[File:{{{image}}}|250px]]
|-
! style="vertical-align: top; padding:3px 10px"| Age
| style="vertical-align: top; text-align: right; padding:3px; 10px"| {{{age}}}
|-
! style="vertical-align: top; padding:3px 10px"| Zodiac
| style="vertical-align: top; text-align: right; padding:3px; 10px"| [[File:{{{zodiac}}}.svg|22px]] {{{zodiac}}}
|-
! style="vertical-align: top; padding:3px 10px"| Birthday
| style="vertical-align: top; text-align: right; padding:3px; 10px"| {{{birthday}}}
|-
! style="vertical-align: top; padding:3px 10px"| Game Debut 
| style="vertical-align: top; text-align: right; padding:5px; 10px"| {{{appearance}}}
|-
! style="vertical-align: top; padding:3px 10px"| Created by
| style="vertical-align: top; text-align: right; padding:3px 10px"| {{{created}}}
|-
|}

{| style="width:254px; font-size: 95%;  border:1px solid #eaecf0; background-color:#f8f9fa; box-shadow: 0 1px 2px 1px rgba(0,0,0,0.02); color:black; margin-left:1em; padding:10px; float:right; clear:right; text-align: left;" class="mw-collapsible mw-collapsed"
!style="text-align: center; background-color:#4c88ef; color:#ffffff;" colspan="2" | <span style="font-size: 1.00em;">Information<span>
|-
! style="vertical-align: top; padding:3px 10px" | Status
| style="vertical-align: top; text-align: right; padding:3px 10px"| {{{status}}}
|-
! style="vertical-align: top; padding:3px 10px" | Relatives
| style="vertical-align: top; text-align: right; padding:3px 10px"| {{{relatives}}}
|-
! style="vertical-align: top; padding:3px 10px" | Relationships
| style="vertical-align: top; text-align: right; padding:3px 10px"| {{{relationships}}}
|-
|}

但是,relativesrelationshipsstatus变量并不总是使用,所以我尝试设置它,以便如果未使用var,则不要放置该行,并且如果不使用使用了三个变量,然后不要放置整个information表...但我无法做到这一点

请帮忙。

mediawiki wiki mediawiki-templates
1个回答
0
投票

您应该使用元模板来制作您的信息框。

最简单的是 V2 信息框,但我在 wp.en 或 wp.es 上找不到除元模板之外的信息。

您应该查看一些带有信息框的 Fandom Wiki,并复制和改编其代码。

在我担任管理员的维基百科中,我制作了关卡信息框,并为信息框单元格使用了元模板,如果存在参数,则会显示信息框单元格。

基本上,您有一页用于信息框,其他页面用于元模板。

这是信息框单元格的元模板,称为“模板:信息框单元格”:

| style="padding:0 3px; background-color:#FFDEAD; text-align:right" | '''{{{1}}}'''
| style="padding:0 3px; background-color:#FFFACD" | {{{2}}}
|-

这里,第一个参数是行的名称,以粗体显示,第二个参数是其值。

信息框看起来像这样,你可以随意称呼它,例如“模板:信息框X”

{| width=290px class=infobox style="border: 0 none black; background: none; margin: 0; border-bottom-style:none; padding:0"
| colspan=2 style="background:transparent; text-align:center" | '''{{PAGENAME}}'''
|-
{{Infobox cell|BAR|{{#if:{{{bar|}}}|bar_value|Unknown}}}}
{{#if:{{{baz|}}}|{{Infobox cell|BAZ|{{{baz}}}}}|}}
{{#if:{{{foo|}}}|{{Infobox cell|FOO|{{{foo}}}}}|}}
}}

这里有一个可以使用模板 {{Infobox X}} 嵌入的信息框和 3 个参数,其中 2 个是可选的。

您想要放置信息框的页面中的代码将如下所示:

{{Infobox X
 | bar = 
 | baz = 
 | foo = 
}}

无论是否有值,“条”线都会存在。如果没有值则显示“未知”

“baz”和“foo”行仅当有值时才会显示。

例如:

{{Infobox X
 | bar = abcdef
 | baz = 
 | foo = Ghi Jkl
}}

显示:

++++++++++++++++++

页面名称

++++++++++++++++++

BAR abcdef

FOO Ghi Jkl

++++++++++++++++++

(抱歉,我在这里制作的信息框非常蹩脚:P)

这是我的 wikia 上的 Template:Infobox 单元格:https://alphabettysaga.fandom.com/wiki/Template:Infobox_cell

还有信息框级别(但它相当复杂):https://alphabettysaga.fandom.com/wiki/Template:Infobox_level

我希望这能有所帮助,处理 wikicode 语法需要一些时间,但过一会儿就很容易了。

祝你好运。

© www.soinside.com 2019 - 2024. All rights reserved.