【问题标题】:Kentico custom page url with URL "Path or Pattern" feature具有 URL“路径或模式”功能的 Kentico 自定义页面 URL
【发布时间】:2019-05-09 19:26:51
【问题描述】:

更新:正如我在 Brenden 的回复下发表的评论。我认为这个问题与多语言网站无关,但与使用属性/ URLs/路径或模式功能有关。为 Pattern 的 Path 字段添加值后,整个导航停止正常工作。


我有一个多语言网站(英语、法语)。目前网址如下:
英语:www.domain.com/en-us/contact-us
法语:www.domain.com/fr-fr/contact-us

我想要的法语是自定义(翻译)网址 www.domain.com/fr-fr/contactez-nous

我关注this Kentico instruction - 通过在框中添加 /contactez-nous 来使用路径或模式的页面底部。一切似乎都还好,但是在法国网站上单击带有新 URL 的页面时,整个主导航(使用 Hierarchical Viewer 完成)似乎都停留在该 URL 上;单击导航上的任何位置都不会执行任何操作。

导航之外的链接可以正常工作。如何使导航再次工作。感谢您的帮助!

【问题讨论】:

    标签: kentico


    【解决方案1】:

    我想我明白了。 GetDocumentURL() 使用 NodeAliasPath 来确定 URL。但是,如果您没有在分层查看器的 Columns 属性中指定 NodeAliasPath 列,则使用当前页面的 NodeAliasPath - 因此所有项目都具有相同的 URL。将 NodeAliasPath 添加到 Columns 属性应该可以解决问题,因此分层查看器可以访问每个单独项目的数据。

    EDIT:看起来在某些情况下也必须指定 DocumentURLPath 列。

    【讨论】:

    • 我已经检查并确实在 Columns 属性中有这些:DocumentMenuCaption、DocumentMenuClass、NodeAliasPath
    • 您能否尝试添加 DocumentURLPath?
    【解决方案2】:

    确保您是在另一个浏览器中进行测试,甚至是在私人窗口中的另一个浏览器中进行测试。如果您在同一窗口的新选项卡中进行测试,CMS 会将所选语言缓存在 Kentico UI 中并在浏览器窗口中显示。

    例如,如果您在内容树下左下角的页面应用中选择了“法语”,然后在新标签页中导航到您的网站,无论您更改多少次语言选择器,它都会显示法语在您的公共网站上使用新语言。

    其次,检查每种语言的给定页面的 URL 别名。确保您没有在每种语言中都相同的别名。例如,/contact-us 使用法语,/contact-us 使用英语。

    【讨论】:

    • 我认为这个问题与多语言网站无关,而是与使用 Properties/URLS/Path 或 Pattern 功能有关。我刚刚在英文网站上尝试过:在 URL 下,在路径或模式字段中添加 /contact-us-NEW。该页面的 URL 更改为 www.domain.com/en-us/contact-us-NEW。但是,在查看该页面时,主导航上的所有其他内容都停止工作,停止将您带到其他页面,就像它应该做的那样。也许我错过了一些非常基本的东西。你能建议吗?
    • 您是否在设置中强制使用域文化?
    • 不完全确定您的意思,但我查看了站点 > 常规 > 文化并注意到默认内容文化和访客文化的值设置为英语 - 美国。
    • 这是在设置 > URLs & SEO > SEO - 文化
    • 谢谢。所有 3 个复选框均未选中
    猜你喜欢
    • 2015-05-08
    • 1970-01-01
    • 2013-12-24
    • 1970-01-01
    • 2015-06-14
    • 2012-05-30
    • 2022-07-13
    • 1970-01-01
    • 2011-06-28
    相关资源
    最近更新 更多