【问题标题】:How to change URL names in Umbraco如何在 Umbraco 中更改 URL 名称
【发布时间】:2014-09-21 21:37:42
【问题描述】:

这是我第一次使用 Umbraco,并且我使用错误的命名格式创建了文档类型/页面,现在这已经发生在我的页面 URL 中,例如 /about-page/。我如何将它们更改为/about,因为我已经搜索了后端管理面板并且似乎没有更改它们的link to document 值的选项。

谁能提供一个简单的基于代码的示例,使用 umbracoUrlAlias 或 umbracoUrlName 我如何最好在 Razor 中更改它。

谢谢

【问题讨论】:

    标签: umbraco umbraco7


    【解决方案1】:

    通过 digbyswift 在评论中帮助编辑@run 码解决方案

    正确的解决方案:

    1. 在Document Types中创建Property,它适用于您要更改URL的所有页面
    2. 可以随意命名,例如页面 URL,并可能给它一个新标签。
    3. 调用别名umbracoUrlName
    4. 键入为 文本字符串
    5. 不应强制(当您开始在视图中将 .Url 替换为 .umbracoUrlAlias 时,它需要存在)
    6. 标签为通用
    7. 点击页面右上角的保存

    在 Umbraco v7.2.5 上添加了入门工具包的屏幕截图

    【讨论】:

    • 我正在使用 Umbraco 7.4.3,但看不到任何名为通用属性的选项卡。有没有办法得到这个标签?
    • @cp100 看起来在 7.4 之前,这会将属性添加到“属性”选项卡(具有“ID”、“创建者”和“上次编辑”属性等的选项卡。现在您只需将此属性添加到不同的选项卡。See this Umbraco forum post.
    【解决方案2】:

    除非我非常误解您的问题,否则您应该能够更改页面名称并重新发布。这不需要额外的字段,只需更改“属性”选项卡中的值并重新发布页面。这将自动更改页面的 URL。

    【讨论】:

    • 如果您需要 url 的一部分不是“urlified”节点名称,您还可以创建一个别名为 umbracoUrlName 的文本字段。 (如果您想将流量从旧网址重定向到新网址,我推荐使用 urlTracker 包our.umbraco.org/projects/developer-tools/301-url-tracker)
    • 当然可以,但有时最简单的方法是最好的。您应该添加您的评论作为答案,尽管 OP 确实要求提供如何使用它的示例。
    【解决方案3】:

    您还可以使用TextString 属性编辑器创建一个名为umbracoUrlName 的属性。如果它有一个值,那么它将使用该值而不是页面名称为页面生成 URL 片段。这会更改页面的 URL,而不是创建别名,例如 umbracoUrlAlias。

    【讨论】:

      【解决方案4】:

      解决方案:

      • 在文档类型中创建属性,该属性适用于您要更改 URL 的所有页面
      • 可以随意命名,例如页面 URL,并可能给它一个新标签。
      • 调用别名umbracoUrlAlias
      • 键入为 文本字符串
      • 使其必需(当您开始在视图中将.Url 替换为.umbracoUrlAlias 时,它将需要存在)
      • 进入所有页面并使用您刚刚创建的属性重命名它们
      • 现在使用您的代码,例如在您使用过.Url 的导航栏中将其更改为.umbracoUrlAlias,然后将使用新的网址。

      请注意,如果您不使用.umbracoUrlAlias,链接仍将处于活动状态,即它们可以工作,但它们不会显示在地址栏中,因为.Url 会吐出与页面关联的原始链接。

      【讨论】:

      • 当您可以更改文档名称并重新发布它时,这太过分了。如果您需要覆盖 URL,则需要使用 umbracoUrlName,并且它应该不是是强制性的,因为这会迫使用户从本质上重复您错误地开始的不良做法。无论哪种方式,如果您需要单独的页面标题,您应该添加一个单独的 pageTitle 字段并使用事件在 Newing 上预填充它。
      【解决方案5】:

      您可以在 web.config 中应用 URL 名称:

      在部分中查找:

      <add key="umbracoUseDirectoryUrls" value="false" /> 
      

      这会将新创建项目的 url 名称设置为 name.aspx

      如果您将其设置为“true”,那么新项目将被命名为 /name/

      另外,您可能希望避免使用 Umbraco 管道处理某些 url,只需使用此设置 - 添加必须绕过的 URL:

      <add key="umbracoReservedUrls" value="~/config/splashes/booting.aspx,~/install/default.aspx,~/config/splashes/noNodes.aspx,~/VSEnterpriseHelper.axd" />
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-09-07
        • 1970-01-01
        • 1970-01-01
        • 2011-05-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多