如何重写或缩短Sitecore URL

时间:2013-12-15 06:34:03

标签: url-rewriting sitecore sitecore7

我的网站上有 Sitecore 网站 http://www.abc.com/our-resorts/resort1/career.aspx 但我想缩短网址 http://www.abc.com/resort1/career.aspx。知道如何从网址中删除our-resorts

enter image description here

请Sitecore社区的任何人帮助我......

感谢

2 个答案:

答案 0 :(得分:13)

我想到的第一个答案是使用自定义LinkProvider(以生成网站上的网址)和自定义ItemResolver(以便在缩短网址时解析项目)。

  1. 创建自己的类MyLinkProvider,继承自Sitecore.Links.LinkProvider并覆盖GetItemUrl方法。如果网址包含/our-resorts/,请移除our-resorts。当然,这假设您没有名称为our-resorts的项目,链接生成中不应省略这些项目。将Sitecore.config标准LinkProvider替换为新标准。
  2. 创建继承自MyItemResolver的{​​{1}}类,并在HttpRequestProcessor后直接将其添加到<httpRequestBegin>管道。新项目解析器的代码:
  3. ItemResolver

    我没有编译或测试代码,因此您需要自己测试它。如果您还有其他问题,请在下面发布。

答案 1 :(得分:2)

如果页面不是太多,您可以在Sitecore中使用URL别名 必须手动为每个项目设置它们。

通过这种方式,您可以告诉Sitecore,例如/our-resorts/resort1/career可通过网址/resort1/career

访问

enter image description here