【发布时间】:2013-02-15 21:22:25
【问题描述】:
设置简单的 Sitecore 网站后,页面链接有时会包含当前语言:
http://example.com/item.aspx
http://example.com/en/item.aspx
我想禁用此行为,以便所有链接都指向http://example.com/item.aspx,而不将语言作为路径的一部分。如何做到这一点?
【问题讨论】:
设置简单的 Sitecore 网站后,页面链接有时会包含当前语言:
http://example.com/item.aspx
http://example.com/en/item.aspx
我想禁用此行为,以便所有链接都指向http://example.com/item.aspx,而不将语言作为路径的一部分。如何做到这一点?
【问题讨论】:
web.config 有一个<linkManager> 的配置设置,其中可以配置languageEmbedding 选项:
<linkManager defaultProvider="sitecore">
<providers>
<clear/>
<add name="sitecore" ... languageEmbedding="asNeeded" ... />
</providers>
</linkManager>
languageEmbedding 选项是:
将配置更改为使用 languageEmbedding="never" 将阻止该语言显示在 URL 中,同样languageEmbedding="always" 将强制该语言始终显示在 URL 中。
【讨论】:
asNeeded 在未找到语言 cookie 时嵌入语言
您不应使用“asNeeded”选项,因为它可能会导致同一页面出现多个网址。使用对 SEO 更友好的“从不”或“总是”
【讨论】: