Orchard CMS:如何在单独的小部件中显示 content-item 字段?

Orchard CMS: How to display a content-item field inside a separate widget?

我是 Orchard CMS 的新手,到目前为止,我主要负责创建自定义主题。我已经 运行 解决了一个问题,但我不确定我是否知道我想做的事情的正确概念......但是这里是:

我想做以下事情:

因此在 CMS 中创建新页面的作者将填写字段,例如:

来自 Orchard 的渲染标记看起来像这样(为简洁起见稍微简化):

<div id="layout-before-main">
    <div class="zone zone-before-main">
        Careers at Company ABC
    </div>
</div>
...
<div id="content">
    <div class="zone zone-content">
        <article class="page content-item">
            <header><h1>Company ABC is Hiring</h1></header>

            <p>Some page content.</p>
        </article>
    </div>
</div>

我知道如何创建自定义字段;我知道的是如何(或是否)可以在另一个区域中引用该字段的值。

欢迎任何建议 - 我渴望学习!

您是否有任何理由想要将它放在一个单独的小部件中?您可以只使用 placement.info 来实现此功能。

假设您有一个 TextField 附加到名为 "ParentTitle" 的页面内容类型。您的 placement.info 将如下所示:

<Placement>
    <Match ContentType="Page">
        <Place Fields_Common_Text-ParentTitle="/BeforeMain:5" />
    </Match>
</Placement>

注意 BeforeMain 前面的斜线。前面的斜杠表示它以全局区域(布局区域)为目标。

如果您想了解 placement.info 以及您应该瞄准哪个 fields/names,请启用模块 "Shape Tracing"。这使您能够查看前端的字段并查看目标 ID。

您可以阅读以下文章以了解这是怎么回事:

http://docs.orchardproject.net/Documentation/Customizing-Orchard-using-Designer-Helper-Tools

http://docs.orchardproject.net/Documentation/Understanding-placement-info