【问题标题】:Umbraco multilanguage with URL change带有 URL 更改的 Umbraco 多语言
【发布时间】:2016-12-15 06:08:29
【问题描述】:

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

我知道有两种翻译方式

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

2 - 使用字典项。

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

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

任何解决此问题的方法。

谢谢

【问题讨论】:

标签: c# asp.net umbraco umbraco7 umbraco-blog


【解决方案1】:

如果您想要一个 1:1 翻译的网站,我建议您使用 Vorto(这意味着每条内容都有每种语言的翻译。对硬编码到您的模板中的文本使用字典项,但 Vorto 会包装您的属性编辑器,以便您可以在同一节点中编辑每种语言。然后您可以使用 HasVortoValue()GetVortoValue() 代替 Umbraco 附带的 HasValue()GetPropertyValue() 方法。这将根据文化返回正确的值请求。您还需要通过设置主机名并将其与文化相关联来配置 Umbraco 以加载多语言内容。您可以通过在主节点的上下文菜单中选择“文化和主机名”并单击“添加域”(您需要先在设置部分添加语言):

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-01
    • 2012-05-02
    • 1970-01-01
    相关资源
    最近更新 更多