【发布时间】:2018-03-22 14:25:49
【问题描述】:
我正在开发一个 Movable Type 的博客项目,但我完全无法在 if 语句中获取多个条件来工作。
最终目标是这样的:
<mt:SetVar name="foo" value="bar">
<mt:SetVar name="foo1" value="bar1">
<mt:If name="foo" eq="bar">
<mt:If name="foo1" eq="bar1">
<div>Foobar Hooray</div>
</mt:If>
</mt:If>
我已经尝试了尽可能多的常用组合,但有没有我遗漏的组合?或者这在 MT 中是不可能的?
即使是文档也没有引用多个条件。 https://movabletype.org/documentation/appendices/tags/if.html
这些是所做的尝试(不按尝试的顺序),即使第一个条件为假,所有的都将显示为真:
<mt:If name="foo" eq="barf" && name="foo1" eq="bar1">
<mt:If (name="foo" eq="barf") && (name="foo1" eq="bar1")>
<mt:If name="foo" eq="barf" & name="foo1" eq="bar1">
<mt:If (name="foo" eq="barf") & (name="foo1" eq="bar1")>
<mt:If name="foo" eq="barf" AND name="foo1" eq="bar1">
<mt:If (name="foo" eq="barf") AND (name="foo1" eq="bar1")>
<mt:If name="foo" eq="barf" And name="foo1" eq="bar1">
<mt:If (name="foo" eq="barf") And (name="foo1" eq="bar1")>
<mt:If name="foo" eq="barf" + name="foo1" eq="bar1">
<mt:If (name="foo" eq="barf") + (name="foo1" eq="bar1")>
【问题讨论】:
-
嗨,John,您的第一个“最终目标”在 MT 6.2 中对我来说效果很好。你用的是什么版本?您是否尝试过仅将该代码本身放在索引模板中以隔离问题?
-
您好 Charlie,我们使用的是 6.3.3 版本。谢谢你的cmets。是的,我们可以很好地使用分层的最终目标,但是由于模板使用依赖于多个自定义字段(设置语言、主题、样式等),我试图将 If 语句简化为一行,而不是四个或五个(有四个或五个结束 if)。它只是想让它更简单而已。
-
假设你很忙,但在这里评论以防我的回答没有触发通知!
标签: if-statement conditional movabletype