如何在Sitecore中创建新页面

时间:2012-09-18 16:12:53

标签: c# .net web-config sitecore ascx

我需要在Sitecore中添加一个页面:

  • abc.com/link1?id=1*something=BLABLA
  • abc.com/link2?id=2*something=BLABLA
  • abc.com/linkN?id=N*something=BLABLA

上面的所有链接都代表一个页面,该页面依次为用户提供基于link1link2 ... linkN的模板。

3 个答案:

答案 0 :(得分:1)

这也是一个可能有用的链接Learn sitecore。非常简洁,我的一般方法是创建一个模板,在内容下创建一个页面,然后分配一个将它链接到asp.net的布局。

答案 1 :(得分:1)

听起来我可以创建三个新项目( link1 link2 linkN )。这些项目可以共享相同的“基础”模板,其中包含它们共有的所有内容(布局,公共/共享控件等)。从那里开始,如果您需要每个项目略有不同,您可以为从基础模板继承的每个项目创建一组新模板(推荐),或直接修改每个项目的演示文稿详细信息。

也就是说,如果你真的需要一个接受多个路由和查询字符串的 单项 ,你有几个选择:

  1. 如果该项目位于您网站的根目录,则可以创建一个项目 item和make Aliases表示您希望路由到的任何其他名称 这个项目。例如,名为 link 的项目可以包含别名 link1 link2 linkN 等。查询字符串将适用于所有别名页面。使用这种方法,您不会像您所描述的那样更改“布局”。相反,您的布局(或一个或多个子布局)将对可用的查询字符串做出反应,并提供不同的视图和/或行为。我喜欢称之为Sublayout“更聪明”:)

  2. 如果您需要一个更强大的解决方案,允许路由超出 站点的根目录,您可能需要考虑扩展 HttpRequest管道中的UrlResolver。

答案 2 :(得分:0)

如果您想使用单个项目来处理所有三个链接,您还可以使用通配符项,从中读取httpcontext中的查询字符串,并根据查询字符串执行您想要执行的任何操作。

在查看您的问题时,我想到的另一件事是:您希望通过查询来实现什么?可能是我,但这看起来有点像你正在尝试使用基于joomla(或其他cms)的网址技术创建Sitecore网站。