Modx ifempty then else语句

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

目前,以下代码仅显示HeroImage(如果存在)。如果不存在,则不显示其他图像blogImage。如果没有HeroImage,如何更改代码以显示blogImage。谢谢

  <img src="[[*HeroImage:isempty:then='[[*blogImage:phpthumbof=`w=1200&h=800`]] [[*]]':else='[[*HeroImage:phpthumbof=`w=1200&h=800`]] [[*]]']]" alt="[[*pagetitle]]" class="img-responsive"/>
modx
3个回答
1
投票

使用:default选项应该足够了:

[[*HeroImage:default=`[[*blogImage]]`:phpthumbof=`w=1200&h=800`]]

0
投票

如果未指定输入,则Ifempty和(默认值为空,isempty)的工作方式类似于默认值,否则返回输入值本身。所以第二个声明没有任何意义,也没有用。

为了您的目的,您可以使用“是”修饰符

[[*HeroImage:is=``:then=`[[*blogImage:phpthumbof=`w=1200&h=800`]]`:else=`[[*HeroImage:phpthumbof=`w=1200&h=800`]]`]]

并记住使用back-ticks进行modx模板化


0
投票

我推出的方式略有不同,但结果可能相同:

[[*HeroImage:neq=``:then=`[[*HeroImage:phpthumbof=`w=1200&h=800`]]`:else=`[[*blogImage:phpthumbof=`w=1200&h=800`]]`]]

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