0

我已经接管了 Orchard 中特定列表的列表渲染,这样我就可以向“ul”标签添加一个新类,并在项目的开头和结尾添加两个虚拟“li”元素(需要正确的“视觉-效果”网页设计师设计)。这是覆盖的模板代码:

@using Orchard.DisplayManagement.Shapes;
@{
    var list = Model.List;
    var items = list.Items;
    var count = items.Count;
    var listTag = Tag(list, "ul");
    listTag.AddCssClass("historia");
    var index = 0;
}
@listTag.StartElement
<li></li><li></li>
    @foreach (var item in items) {
        var itemTag = Tag(item, "li");
        if (index == 0) {
            itemTag.AddCssClass("first");
        }
        else if (index == count - 1) {
            itemTag.AddCssClass("last");
        }
        @itemTag.StartElement
        @Display(item)
        @itemTag.EndElement
        ++index;
    }
<li></li><li></li>
@listTag.EndElement
<div class="scroll">
    <hr />
    <p>
    <input type="button" value="back" />
    </p>
    <div class="dot"></div>
    <div class="dot"></div>
    <div class="local"></div>
    <div class="dot"></div>
    <div class="dot"></div>
    <p>
    <input type="button" value="next" />
    </p>
</div>
@Display(Model.Pager)

现在我正在尝试显示列表的标题,我注意到它根本没有在我的自定义渲染和标准列表渲染例程中显示。我已经尝试将这几个选项添加到布局中,现在可以使用:

<h1>@Model.Title</h1>
@Display(Model.Header)
@Display(Model.Title)
@Display(Model.List.Header)
@Display(Model.List.Title)
<h1>@Model.Header.Items[0].Title</h1>

没有任何成功!我错过了什么?(当然这是一个新手问题:-)

4

1 回答 1

0

我不敢相信我忘了检查 Placement.info 文件!在我看来,所有placement.info 文件的总和是果园主题的圣杯!

Orchard.Web\Modules\Orchard.Lists\Placement.info 文件如下所示:

<Placement>
    <!-- available display shapes -->
    <!--
        Parts_Container_Contained_SummaryAdmin
    -->
  <Match ContentType="List" DisplayType="Detail">
    <!-- don't show the List title or Common Metadata -->
    <Place Parts_Title="-" />
    <Place Parts_Common_Metadata="-" />
  </Match>
  <Match DisplayType="SummaryAdmin">
    <Place Parts_Container_Contained_SummaryAdmin="Actions:10"/>
  </Match>
</Placement>

请注意,标题部分与“-”特殊位置一起被遗忘了吗?

我所要做的就是在我的主题的位置信息上覆盖它:

  <Match ContentType="List" DisplayType="Detail">
    <Place Parts_Title="Header:2>" />
  </Match>

我告诉过你这是一个菜鸟问题!毕竟我能够自己回答!很抱歉用这个愚蠢的问题打扰社区!

于 2012-09-16T02:55:19.247 回答