我正在努力在Umbraco CMS 7.5版中实现多语言功能,目前我看到了两种可能的解决方案:
1-仅使用一个根路径
我认为作为此解决方案的补充的最佳软件包是" Vorto",我所要做的就是创建扩展vorto数据类型的新数据类型,我可以直接在文档类型上开始编辑文本
2-使用多根路径
想法是复制每种语言的主根路径。
- >我在网上关注了很多教程,但它们都与之前版本的Umbraco有关,我发现的解决方案似乎与当前版本无关... 一旦我复制了根路径并将语言与根文件夹相关联,那么下一步是什么?
我还有一些问题:
提前谢谢你!
答案 0 :(得分:3)
两种情况都有其优点和缺点,两者都广泛用于Umbraco社区/解决方案。我更喜欢第二种解决方案,特别是在较大的网站上,它使您能够限制不同语言编辑器的访问权限,而不是每个网站都要求1-1内容结构化。
这里有一个关于这个主题的Umbraco电视剧集:https://umbraco.tv/videos/umbraco-v7/implementor/multi-lingual/creating-a-multi-lingual-site/introduction/。
总结:
关于你的问题:
Ad.1。我没有:)
Ad.2。它选择了在节点上设置的文化,因此可能会强制它。除此之外,它使用标准的.NET文化检测,所以是 - 它使用" accept-language"头。
Ad.3。有一个键" umbracoHideTopLevelNodeFromPath"这使您可以在URL路径中包含顶级根。阅读更多:https://our.umbraco.org/documentation/reference/config/webconfig/
然而,如果你更喜欢选择1,那么有一篇很棒的文章也会提供示例代码:http://24days.in/umbraco/2015/multilingual-vorto-nested-content/。我现在也会玩它! :)
答案 1 :(得分:1)
嗯,选项2工作的最简单方法是制作这样的树结构:
根
如果需要domain.ext / language / URL,请在Root节点上设置domain.ext,并在每个语言节点上设置语言。您还可以在每个语言节点上设置域和语言,以获取(例如)domainname.com(一个)和domainname.net(另一个)。
这种做法最近不应该改变。
答案 2 :(得分:0)
关于你的第一点,还有另一种方式,但不会有一段时间。 Umbraco 8(2017年第一季度)将支持页面变体的概念,这意味着你可以拥有一个树,然后是每种不同语言的变体,无需像Vorto这样的东西。
现在还处于早期阶段,所以我们必须等待,看看该功能的效果如何!