Umbraco 多语言 URL 变化

Umbraco multilanguage with URL change

我正在使用 Umbraco v7.x。我的静态页面很少,需要用两种语言添加它们(en/da)。

我知道有两种翻译方式

1- 复制文件夹并分配不同的文化和主机名,并根据语言添加字段数据。

2 - 使用字典项。

但我的问题是客户希望在所有页面上都有自定义字段,这样他就可以更改静态页面数据而无需询问开发人员。因此,如果我使用第一种方法更改语言,该方法也会更改 URL,而此解决方案不需要。

其次,我使用字典,而不是客户如何更改字段数据,因为他必须转到字典项目并在那里进行任何更改。这不是问题,但文本需要格式化,如果我使用字典项,这是不可能的。

任何解决此问题的方法。

谢谢

如果您想要 1:1 已翻译的网站(这意味着每段内容都有针对每种语言的翻译),我建议使用 Vorto。对硬编码到模板中的文本使用字典项但 Vorto 将包装您的 属性 编辑器,以便您可以在同一节点中编辑每种语言。然后您可以使用 HasVortoValue()GetVortoValue() 而不是 HasValue()GetPropertyValue() 方法。这将 return 基于请求文化的正确值。您还需要配置 Umbraco 以通过设置主机名并将其与文化相关联来加载多语言内容。您通过在主节点的上下文菜单中选择 "Culture and Hostnames" 并单击 "Add Domain"(您需要先在“设置”部分中添加语言)来执行此操作:

或者,如果您想为每种语言使用子文件夹而不是不同的域(例如站点名称。com/english 而不是 english.sitename.com),您可以创建自定义内容查找器。我已经写了几篇关于如何做到这一点的博客文章 here and here