Sitecore全局网址到特定网址

时间:2011-09-29 07:50:25

标签: url-rewriting sitecore sitecore6

目前我遇到以下问题:

我必须为公司制作的网站位于不同的位置。但是几页的内容对于所有位置都是相同的。现在我已经创建了一个包含所有位置项目的全局文件夹。但现在我面临以下问题:当从特定位置的网站访问全局项目时,我获得了全局URL。但我想要的是具体的位置网址仍然是相同的结构,例如:

  • 现在是www.url.com/global/subfolder/itemname
  • 我想要的是www.url.com/location1/subfolder/itemname

是否有人对此问题有任何解决方案/建议?

是否还有人创建菜单以插入这些全局项目以及插入特定位置项目的解决方案?

有关我的Sitecore内容结构的更多信息

  • Global:包含alle位置的全局项目
  • 公司:公司的企业网站
  • 位置1:location1的网站
  • 位置2:location2的网站

2 个答案:

答案 0 :(得分:1)

如果我理解正确的话,这就是我要做的。它可能不是最漂亮的解决方案。但它会奏效。

您在/ global / subfolder / itemname

中有“数据”项

然后只创建一些模板,这些模板是“虚拟”页面,只包含指向全局项目的链接(可能还有几个可能不同的字段(可能是指定位置的联系电子邮件)。

然后你创建一个sublayout,基本上jsut获取引用的项目并使用它而不是Sitecore.Context.Item。

然后在/ location1 / subfolder / itemname中创建“虚拟”模板的实例,并将其引用到/ global / subfolder / itemname

这样您的网址就会正确,数据也会一样。

另一个可能更智能的解决方案(如果您已启用代理)是创建一个代理 / global / subfolder / itemname作为源并指向/ location1 /子文件夹/作为目标(或者您可以使用/ global /子文件夹并检查“包含子项”。

以下是5.3中如何使用代理的指南: http://sdn.sitecore.net/Articles/Administration/Using%20Proxy%20Items%20in%205,-d-,3.aspx

答案 1 :(得分:1)

Adam Weber是对的,克隆是你最好的解决方案:

  1. 创建您的全局部分,其中包含您需要的所有子项目
  2. 对于每个本地部分,请克隆全局部分并将其放置在您希望显示在本地菜单中的位置