本指南介绍了为多语言社区组织 Discourse 论坛的不同方法,包括每种方法的优缺点。
所需用户等级:管理员
Discourse 提供了多种方式来为您的多语言社区构建站点结构。本指南将探讨最常见的几种方法及其优缺点。
由于我们现在推荐使用 Discourse 核心内置的 内容本地化 功能(可选通过 Discourse AI 插件实现自动 AI 翻译),本主题已不再作为多语言社区结构推荐方法的来源。更多详细信息,请参阅 Content Localization - Manual and Automatic with Discourse AI
使用分类进行语言分离
“其他语言”分类及其子分类
一种方法是创建一个名为“其他语言”的主分类,并为特定语言创建子分类。
实施步骤:
- 创建一个名为“其他语言”的新分类
- 为每种您希望支持的语言添加子分类
- 鼓励用户在相应的语言子分类中发帖
优点:
- 语言之间界限清晰
- 可在每个语言内部使用分类限制标签进行进一步组织
缺点:
- 多语言用户需要跟踪多个包含相似内容的分类
- 可能导致按语言划分的内容孤岛
为每种语言设立独立的顶级分类
另一种方法是为每种支持的语言创建独立的顶级分类。
实施步骤:
- 为每种您希望支持的语言创建一个新分类
- 使用如 自定义头部链接 这样的主题组件,在头部添加语言切换链接
优点:
- 语言板块区分明确
- 对于只说一种语言的用户而言导航便捷
缺点:
- 可能导致社区体验碎片化
- 多语言用户难以跨语言跟踪讨论
- 可能导致按语言划分的内容孤岛
使用标签进行语言标识
全站语言标签
这种方法涉及为每种支持的语言创建标签,并鼓励用户相应地为其帖子添加标签。
实施步骤:
- 为每种您希望支持的语言创建标签(例如 #english、#french、#spanish)
- 鼓励用户在创建主题时添加相应的语言标签
- (可选)在标签名称中使用表情符号以实现视觉区分
优点:
- 无需创建独立的分类
- 多语言用户可以轻松关注所有内容
- 对于可能涉及多种语言的主题具有灵活性
缺点:
- 依赖用户遵守规则以确保标签准确
- 对于习惯基于分类导航的用户来说可能不够直观
使用独立的 Discourse 实例
对于具有明显语言群体划分的社区,可以考虑为每种语言使用独立的 Discourse 实例。
实施步骤:
- 为每种语言设置一个独立的 Discourse 实例
- 为每个实例使用子域名或独立域名(例如 en.example.com、fr.example.com)
- 使用如 自定义头部链接 这样的主题组件,在头部或页脚建立实例间的链接
优点:
- 按语言完全分离内容和用户
- 可为每个实例针对其特定语言社区进行定制
缺点:
- 管理多个实例更为复杂
- 多语言用户难以跨语言社区参与
- 可能导致讨论重复和社区碎片化
其他考虑因素
分类和标签的本地化
Discourse 现在支持通过内置的内容本地化功能对分类名称、分类描述和标签名称进行本地化。请在站点设置中启用“启用内容本地化”并配置“支持的内容本地化语言”。授权组可提供手动翻译,或通过 Discourse AI 插件配置自动翻译。
用户语言偏好
Discourse 内置了多种语言设置,包括“允许用户设置语言”、“根据 Accept-Language 请求头设置语言”、“根据 Cookie 设置语言”以及“根据参数设置语言”。这些设置允许用户设置其首选界面语言。启用内容本地化后,用户将根据其语言偏好自动查看本地化内容。
语言切换器
“内容本地化语言切换器”设置可在头部显示语言切换器,允许访客(包括匿名用户)在您支持的语言之间切换。
搜索功能
确保用户能够跨所有语言进行搜索,或按特定语言筛选结果。

