【问题标题】:MediaWiki template image dimensionMediaWiki模板图像尺寸
【发布时间】:2016-10-03 22:13:00
【问题描述】:

我正在尝试创建这样的模板

{{#if: 空| {{{Livello10|}}}||[[文件:{{{Immagine10|}}}.png|40px]]||{{{Nome10|}}}

所以如果这三个值为空,表格的单元格中不会显示任何内容,但 40px 始终存在

MediaWiki 1.27.0,我已经尝试过使用 Template:!,即使在这个版本中不需要

编辑:对不起,我会尽力解释得更好

This link 是我必须使用的模板页面 this is输出示例

如您所见,“40px”仍然可见,有办法隐藏它或者如果值为空,则隐藏表格的整行?

【问题讨论】:

  • 从您的描述来看,您要达到的目标不是很清楚。您能否澄清您的问题或提供更多上下文 - 围绕此块的一些代码应该足够了。

标签: image templates mediawiki


【解决方案1】:

如果我理解正确,您的表格中有两列,并且您只想在Livello10 不为空时填充它们?但是您仍然希望单元格出现(即您不想排除整行)?

我认为你必须有两个 if 声明:

{|
| {{#if: {{{Livello10|}}} | [[File:{{{Immagine10|}}}.png|40px]] }}
| {{#if: {{{Livello10|}}} | {{{Nome10|}}} }}
|}

(为了清楚起见,我将每个单元格放在自己的行中。)

请注意,您的 {{#if: empty|...}} 并没有像您想象的那样:字符串 empty 始终等于 True,因此只执行第一部分。

编辑:

啊,这更有意义。因此,要隐藏整行,您可以执行以下操作:

{|
! Livello !! Immagine !! Nome
|-
{{#if: {{{Immagine1|}}} | <!--
  -->{{!}} {{{Livello1|}}}<!--
  -->{{!}} [[File:{{{Immagine1}}}.png|40px]]<!--
  -->{{!}} {{{Nome1|}}}<!--
  -->{{!}}-
}}
|}

(注释标记只是为了使if 语句中的位可以缩进,并注意对指示单元格的管道使用{{!}} 技巧,以防止这些管道被视为@ 的一部分987654331@声明。)

您遇到的“40px”问题是因为当Immagine1 为空时,文件语法解析为[[File:.png|40px]];这会呈现为一个红色链接,上面写着40px,这会导致一个用于上传.png 文件的上传表单(即,在点之前没有任何内容的文件名)。

如果您只想在没有图像时隐藏 40px,但仍显示表格的其余部分,那么我上面的第一个答案适用(即仅将 [[File...]] 语法包装在 @987654338 中@ 声明)。

【讨论】:

  • 谢谢山姆,我已经修改了我的第一篇文章,也许更清楚一点:)
  • 谢谢你的回答,但我仍然无法让它工作我已经把这个 |{{#if: {{{ImmagineProssimo|}}} {{!}} [ [文件:{{{ImmagineProssimo}}}.png|40px]] {{!}} }}
    [[{{{Prossimo oggetto}}}]] 但是在这个页面中shopheroesitalia.com/wiki/Zanne_profane 仍然出现 40px 和别的东西
  • {{!}}只需要在if语句within输出管道时使用。所以你会这样做:| {{#if: {{{ImmagineProssimo|}}} | [[File:{{{ImmagineProssimo}}}.png|40px]] }}&lt;br/&gt;[[{{{Prossimo oggetto}}}]] 哦,当你不使用语句的“假”部分时,你不必担心第二个 if 语句管道。
猜你喜欢
  • 2020-03-31
  • 2015-09-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多