【问题标题】:How to create template for content part created in admin in an orchard site如何为果园网站的管理员中创建的内容部分创建模板
【发布时间】:2014-07-29 03:31:04
【问题描述】:

我是 Orchard 的新手,似乎无法解决这个问题。

目标

  1. 能够在每页上指定两个文本值,如果它们不为空,则在样式 DIV 中显示这些值。

程序

  1. 我在 Orchard 的管理员中创建了一个新的内容部分,名为 "InnerPageTitleArea"
  2. 我在这部分添加了两个字段IpTitle(文本字段)IpSubtitle (文本字段)
  3. 我将此部分添加到页面内容类型中
  4. 那些文本框在编辑页面时显示,我将它们填写在 几页
  5. 这些值显示在输入它们的页面上(到目前为止一切正常)

问题:

  1. 我想为 InnerPageTitleArea 提供一个模板,但是所有 尝试失败。
  2. 使用形状跟踪时,没有替代参考我的 单独的部分
  3. 所有替代项都以“字段”开头,即 ~/Themes/MyTheme/Views/Fields.Common.Text-InnerPageTitleArea.cshtml
  4. 如果我使用其中一个替代字段,我的模板会重复 两次 - 每个字段一次
  5. 如果我使用特定于字段的模板,即 ~/Themes/MyTheme/Views/Fields.Common.Text-InnerPageTitleArea-IpTitle.cshtml 我实际上可以得到两个值,但是另一个值 (IpSubtitle) 仍显示为纯文本。我可能可以补救 与 Placement.info,但我怀疑我只是缺少一些 对果园有基本的了解。

怎么办?

【问题讨论】:

    标签: templates orchardcms


    【解决方案1】:

    您的部件永远不会渲染任何东西,因为它没有可以创建形状的驱动程序。从那部分出来的唯一形状是每个字段的形状。获得所需内容的最简单方法是为每个字段创建一个替代项。这行得通吗?

    【讨论】:

    • 感谢您提供的信息,这有助于我的理解。我不认为为每个字段创建替代项是要走的路,因为我需要它们都包含在同一个 div 中。我想我可以在其中一个替代品中做所有事情,然后为第二个替代品创建一个空白替代品,但这有点味道。是在代码中创建新零件类型的首选方法吗?
    • 您可以使用放置将该字段的形状发送到“-”,而不是空白替代。
    • @BertrandLeRoy 是 Orchard 不能弯曲以允许为内容部分创建 .cshtml 替代项,还是只是一些尚未编码到框架中的东西(假设可以)?
    • 抱歉,问这个问题我想起了我不久前看到的一个旧博客,刚刚找到:kobowi.co.uk/blog/2012/11/…。所以@jcomet 你必须编写你想要的替代品。
    猜你喜欢
    • 2018-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多