在 Velocity 中打印 html 字符串中的变量值

Print variable value inside an html string in Velocity

我需要在 Velocity 中(在 Liferay 模板内)为 URL 添加一个后缀。

我有以下(简化的)代码:

#set($isMobile = "")
<img src="http://www.example.com/icon-facebook$isMobile.png" >

#set($isMobile = "-mobile")
<img src="http://www.example.com/icon-facebook$isMobile.png" >

在我看来,这应该导致:

<img src="http://www.example.com/icon-facebook.png" >
<img src="http://www.example.com/icon-facebook-mobile.png" >

但是我得到了这个(因为变量是按字面打印的而不是解析的)

<img src="http://www.example.com/icon-facebook$isMobile.png" >

请问,如何解决?

Velocity 的正确语法是

<img src="http://www.example.com/icon-facebook${isMobile}.png" >