Sitecore 语言嵌入和默认语言

Sitecore language embedding and default language

公司要求始终在我们的 CD 网站上以 URL 显示语言。我做了一些研究并将 LanguageEmbedding 设置设置为始终。这似乎适用于非默认语言,但不适用于默认语言英语。

当我尝试转到 www.abc.com 时,它不应该更改为 www.abc.com/en 吗?我的想法是否正确,或者这就是 Sitecore 对于默认语言的行为方式,如果它不是嵌入式链接,它就不会显示该语言?

谢谢

当 Sitecore 通过浏览器首选项、cookie、URL 别名或查询字符串确定您的语言时,它将不会 重定向到首选的 URL 结构与语言蛞蝓。

您可以创建重定向模块(即,如果设置了语言上下文,则进行正确的 URL 和重定向)或写出 <link langref=""> 标签,无论如何这是 SEO 的最佳做法。

OOTB 这就是 Sitecore 的工作方式。当你有 LanguageEmbedding="always" - links 应该全部用嵌入的语言生成 - 包括 en,所以主页的 link 将是 www.abc.com/en -但如果您只是访问域 - www.abc.com - Sitecore 会使用您上次访问时存储的语言 cookie 或默认语言。

如果您希望访问 www.abc.com 时用户总是 的行为最好使用 IIS 重定向或重写来设置.