我使用Orchard CMS 1.10.1
。我重写了summary display type
内容类型的视图,为此,我需要在显示类型摘要中显示图像字段的URL。
我可以通过这种方式获取图片:
@Model.ContentItem.Product.Images.FirstMediaUrl
这是视图的一部分:
<div class="col-sm-4">
<img src=@Model.ContentItem.Product.Images.FirstMediaUrl />
</div>
我的问题是如何获得此图片摘要的网址?所以我可以用摘要替换上面的url。
答案 0 :(得分:3)
你可以这样做:
@{
var image = Model.ContentItem.Product.Images.MediaParts.First();
}
<div class="col-sm-4">
@Display(BuildDisplay(image, "Summary"))
</div>
您需要像这样显示它,因为Orchard中的Image
是一个内容项,但如果您想通过调整大小来显示图片网址,则可以执行以下操作:
@{
var imageUrl = Model.ContentItem.Product.Images.FirstMediaUrl;
}
<div class="col-sm-4">
<img src="@Display.ResizeMediaUrl(Width: 200, Height: 200, Mode: "crop", Alignment: "middlecenter", Path: imageUrl)" />
</div>
答案 1 :(得分:1)
使用Placement.info获取媒体项的摘要形状,而不是使用URL进行硬编码。
在您的视图中覆盖:
<div class="col-sm-4">
@Display(Model.ImageSummary)
</div>
在你的Placement.info
中<Match ContentType="MyContentType">
<!-- ImageSummary is the local zone name which you then can display with
@Display(Model.ImageSummary) in Content-MyContentType.cshtml -->
<Place Fields_MediaLibraryPicker_Summary="ImageSummary:1" />
</Match>