我们可以为每个用户、组或组织定义语言吗?

Can we have language define per user or group or org?

我想检查是否可以根据用户组织或组来限制 language portlet 中列出的支持语言。

我们有一个带有语言 portlet 的页面,它配置了 "English"、"French"、"German" 等语言

我们有用户:

我们可以使用原生 Liferay 实现吗?还是需要使用 hook 来实现?

由于语言 portlet 使用 portlet 首选项来存储所选语言(请参阅 /html/portlet/language/init.jsp)并且该 portlet 声明 preferences-owned-by-group(请参阅 /WEB-INF/liferay-portlet.xml),这意味着所有用户都可以看到相同的语言列表。

如果您想更改它,您要么必须编写一个挂钩(然后在 /html/portlet/language/init-ext.jsp 中进行必要的修改),要么创建您自己的 portlet,要么在您的主题中实现该功能。如果要求的设计与语言 portlet 提供的设计不匹配,后者无论如何都是常见的情况。

在 Liferay 6.2 中,您可以为每个组织或社区站点定义语言。我想您已经通过 portal-ext.properties 或通过控制面板设置了可用语言。

在 "site settings - display settings" 您可以限制可用的语言。您可以为每个站点更改这些语言。