【问题标题】:How to create a new page in Sitecore如何在 Sitecore 中创建新页面
【发布时间】:2012-09-18 16:12:52
【问题描述】:

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

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

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

【问题讨论】:

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


【解决方案1】:

在我看来,您可以只创建三个新项目(link1link2linkN)。这些项目可以共享相同的“基本”模板,其中包含它们共有的所有内容(布局、通用/共享控件等)。在那里形成,如果您需要每个项目略有不同,您可以为从基本模板继承的每个项目创建一组新的模板(推荐),或直接修改每个项目的演示详细信息。

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

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

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

【讨论】:

  • 我对站点核心完全陌生。你能告诉我如何创建项目我可以在网站核心的 gui 中找到布局和模板但找不到项目请详细解释create three new items (link1, link2, and linkN). These items can share the same "base" template that contains everything they have in common (Layout, common/shared Controls, etc.). Form there, if you need each one to be slightly different, you can create a new set of templates for each item that inherit from the base template (recommended)
  • 好的,没问题,听起来您对 Sitecore 很陌生。在深入挖掘之前,我会通读this tutorial。您可能还想参加 Mill Valley 的 Sitecore 开发人员培训。即使是 Sitecore 中最简单的页面,也有很多移动部分,最好慢慢来,真正了解每个部分的作用。
【解决方案2】:

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

【讨论】:

    【解决方案3】:

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

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

    【讨论】:

      猜你喜欢
      • 2016-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-18
      相关资源
      最近更新 更多