我在果园里很陌生,我很难找到解决方案,因为我认为这是一个基本问题。
我想为自定义内容类型“Button”呈现自己的自定义形状“Content-Button”。这很棒!
Button内容由以下内容组成:
我的自定义形状如下所示:
@using Orchard.Utility.Extensions;
@{
if (Model.Title != null) {
Layout.Title = Model.Title;
}
Model.Classes.Add("content-item");
var contentTypeClassName = ((string)Model.ContentItem.ContentType).HtmlClassify();
Model.Classes.Add(contentTypeClassName);
var tag = Tag(Model, "div");
tag.AddCssClass("row");
}
@tag.StartElement
<div id="" class="col-md-8 col-sm-10 col-xs-8 col-xs-push-2 col-sm-push-1 col-md-push-2 btn btn-secondary center-block">
@Display(Model.Content)
</div>
@tag.EndElement
我试图做的不是调用'@Display(Model.Content)'而是要调用特定的形状来渲染它。就像@Display(Model.Content.DisplayName)。
我想对内容选择器做同样的事情,所以我可以在div中创建一个链接(通过ID)
我也尝试使用我的主题的placement.info来排除某些(额外的)字段,但似乎我在那里做错了。
<Match ContentType="Button">
<Place Parts_Contents_Publish="-"></Place>
<Place Fields_Common_Text="-"/>
</Match>
注意:'Fields_Common_Text'纯粹是一个测试,但它仍然会在我的按钮上呈现这种形状。
如果有人可以指出我正确的方向,解释它或给我一些非常好的文件来阅读我会是一个非常快乐的人。
答案 0 :(得分:1)
您可以直接访问字段,如下所示:
@Model.ContentItem.ButtonPart.DisplayName.Value
和内容选择器字段相同,那么您不再需要使用placement.info文件。