我在一个sitecore环境中托管两个站点。 我已经修改了web.config以便
<site hostName="subdomain1.domain.com" startItem="/home" ... />
<site hostName="subdomain2.domain.com" startItem="/SecondSite/Homepage" ... />
问题是我使用sc:path(。)在xslt渲染中生成的菜单链接太长了。
http://subdomain2.domain.nl/sitecore/content/SecondSite/CaptivatingPage.aspx
我希望链接看起来像
http://subdomain2.domain.nl/CaptivatingPage.aspx
请给我一个提示。
答案 0 :(得分:2)
该站点的真正根目录是SiteRoot + StartItem,因此在您的情况下它是/sitecore/content/SecondSIte/Homepage
。您在XSL呈现中生成链接的页面不在站点的根目录下 - 它与主页的级别相同。
sc:path(.)
应该为您提供一个友好的链接,对于主页下的每个页面,它将是http://subdomain2.domain.nl/EachPage.aspx
,但对于根目录之外的项目,它会将其与完整路径连接起来:{{1 }}
因此,尝试在主页下移动CaptivatingPage,您将得到您期望的结果。
答案 1 :(得分:0)
不确定您使用的CMS版本,但在web.config中,查看是否存在linkManager元素。如果是这样,请尝试定义shortenUrls = true属性。
另一种选择是创建一个xslt扩展函数来覆盖path方法,指定你自己的UrlOptions逻辑。