【发布时间】:2012-03-08 21:23:48
【问题描述】:
我目前正在升级为 Liferay 6.0 构建的 Liferay 主题,并且还需要与 Liferay 6.1 兼容(长话短说,它需要与两者兼容才能在多个客户端上使用)。
据我了解,各种 portlet 首选项变量的名称已从 6.0 更改为 6.1——例如,“portlet-setup-show-borders”现在改为驼峰式:“portletSetupShowBorders”。由于我的主题中包含了一些 portlet,因此在 6.1 中部署主题时,我需要更改这些变量的名称,但保持其在 6.0 中的方式。
我的问题是 - Liferay 是否有一个我可以在主题中访问的变量,它会告诉它当前运行的 Liferay 版本是什么?这会让我的生活更轻松。
这是我目前得到的:
$velocityPortletPreferences.setValue("portlet-setup-show-borders", "false")
$velocityPortletPreferences.setValue("group-id", "$group_id")
$velocityPortletPreferences.setValue("article-id", "$toprightArticleId")
$theme.runtime("56_INSTANCE_RIGHT", "", $velocityPortletPreferences.toString())
#set ($VOID = $velocityPortletPreferences.reset())
这是我想要完成的一个示例(显然不起作用,但这是我想要做的):
#if ($themeVersion == "6.0")
$velocityPortletPreferences.setValue("portlet-setup-show-borders", "false")
$velocityPortletPreferences.setValue("group-id", "$group_id")
$velocityPortletPreferences.setValue("article-id", "$toprightArticleId")
$theme.runtime("56_INSTANCE_RIGHT", "", $velocityPortletPreferences.toString())
#set ($VOID = $velocityPortletPreferences.reset())
#end
#if ($themeVersion == "6.1")
$velocityPortletPreferences.setValue("portletSetupShowBorders", "false")
$velocityPortletPreferences.setValue("groupId", "$group_id")
$velocityPortletPreferences.setValue("articleId", "$toprightArticleId")
$theme.runtime("56_INSTANCE_RIGHT", "", $velocityPortletPreferences.toString())
#set ($VOID = $velocityPortletPreferences.reset())
#end
有没有人解决了这个问题,并且愿意帮助我。谢谢!
【问题讨论】:
标签: themes liferay portlet velocity