如何重写或缩短Sitecore网址

山姆

我有Sitecore网站,网址为http://www.abc.com/our-resorts/resort1/career.aspx,但我想缩短URL,例如http://www.abc.com/resort1/career.aspx任何想法如何our-resorts从URL中删除

在此处输入图片说明

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

谢谢

马雷克·穆西拉克(Marek Musielak)

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

  1. 创建您自己的类并MyLinkProvider继承Sitecore.Links.LinkProvider和重写GetItemUrl方法。如果网址包含/our-resorts/,请删除our-resorts当然,这假定您没有名称our-resorts不应该在链接生成中省略的项目。LinkProvider新的替换在Sitecore.config标准中
  2. 创建MyItemResolver继承自的类HttpRequestProcessor,并将其<httpRequestBegin>直接添加到管道中ItemResolver新项目解析器的代码:
public class ItemResolver : HttpRequestProcessor
{
    public override void Process(HttpRequestArgs args)
    {
        if (Context.Item != null || Context.Database == null || args.Url.ItemPath.Length == 0)
            return;
        string path = "/our-resorts" + MainUtil.DecodeName(args.Url.ItemPath);
        Context.Item =  args.GetItem(path);
    }
}

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

网址缩短的重写规则

来自分类Dev

如何在asp中重定向(或重写网址)缩短的网址到长(原始)网址

来自分类Dev

如何获得缩短网址的目标网址?

来自分类Dev

如何重写这种网址?

来自分类Dev

如何使用.htaccess缩短网址

来自分类Dev

如何通过htaccess重写网址

来自分类Dev

如何通过htaccess重写网址

来自分类Dev

Sitecore:如何自定义媒体网址

来自分类Dev

如何为文件夹重写网址?

来自分类Dev

如何将网址重写为.html

来自分类Dev

如何编写Mod重写以排除Shibboleth网址?

来自分类Dev

如何(.htaccess)重写特定搜索查询的网址?

来自分类Dev

如何为文件夹重写网址?

来自分类Dev

Laravel如何处理网址重写?

来自分类Dev

如何简化和缩短这些 NGINX 重写规则?

来自分类Dev

网址重写htacces-如何重写我的链接?

来自分类Dev

如何通过TinyURL api缩短包含“#”符号的网址?

来自分类Dev

如何在Yii Framework中缩短网址?

来自分类Dev

如何编码和缩短哈希以确保网址安全?

来自分类Dev

.htaccess与网址缩短器

来自分类Dev

虚假网址缩短器

来自分类Dev

当最终网址为https时,如何使用python取消缩短(解析)网址?

来自分类Dev

使用mod重写缩短URL

来自分类Dev

在Django中网址未缩短

来自分类Dev

用htaccess解决缩短的网址

来自分类Dev

网址缩短不起作用

来自分类Dev

使用默认参数,我该如何重写网址?

来自分类Dev

IIS网址重写:如何处理图片源srcset?

来自分类Dev

如何使用htaccess在joomla中重写自定义网址