我想在liferay中更改网页内容的语言。所以我尝试用这种方式以编程方式将语言从en_EN更改为sk_SK(斯洛伐克语):
$themeDisplay.getLanguageId() // there it is en_EN
$themeDisplay.setLanguageId('sk_SK')
$themeDisplay.getLanguageId() // there it is sk_SK
与此代码相同
#set ($locale=$localeUtil.fromLanguageId("sk_SK"))
$themeDisplay.setLocale($locale)
$themeDisplay.getLocale()
但网络内容并没有改变。你知道为什么吗?
如果不清楚,我会尝试举例说明:网页顶部通常是一些语言按钮,因此您可以在更多语言之间切换。我想在liferay中做同样的事情。所以我有一个带有更多翻译的WebContent,我想用这个按钮更改webContent的语言/翻译。
答案 0 :(得分:2)
在网页的顶部通常是一些语言按钮,所以你可以 在更多语言之间切换。我想在liferay中做同样的事情。所以我有 一个WebContent有更多的翻译和我想要的这个按钮 更改webContent的语言/翻译。
如果我没错,Liferay已经提供了开箱即用的功能。你不需要务实地做到这一点。
使用Liferay的导航 portlet切换语言。
答案 1 :(得分:0)
谢谢,但我想将它添加到我的代码中,放入* .vm文件中。所以这是我的解决方案(最后我找到了)
<div id="language-portlet">
#set ($VOID = $velocityPortletPreferences.setValue('portlet-setup-show-borders', 'true'))
#set ($VOID = $theme.runtime("82", '', $velocityPortletPreferences.toString()))
#set ($VOID = $velocityPortletPreferences.reset())
</div>
它会在您的网页上显示可能的翻译。 (对我而言,这是旗帜)
答案 2 :(得分:0)
最佳解决方案是覆盖此属性
locale.default.request=false
company.default.locale=sk_SK
是portal-ext.proprties
档