2016-08-09 5 views
3

私はOrchard CMS 1.10.1を使用します。私はコンテンツタイプのsummary display typeの表示をオーバーライドしています。このためには、表示タイプの要約にimageフィールドのURLが必要です。オーチャードビューでサマー - イメージURLを取得する方法

私はこの方法itseft画像のURLを取得することができます。

@Model.ContentItem.Product.Images.FirstMediaUrl 

これは、ビューaltenateの一部です:

<div class="col-sm-4"> 
     <img [email protected] /> 
</div> 

私の質問は、私は、この画像の要約のURLを得ることができる方法ですか?だから私は上記のURLを要約と置き換えることができます。

+0

「この画像の要約のURL」とはどういう意味ですか?オーチャードは各メディアファイルごとに1つのURLを持っています。サイズを変更したいのですか?またはイメージコンテンツアイテムの概要表示を希望しますか?コメントのための – mdameer

+0

おかげで、私は、このビューでの使用ゾーンをいけない画像コンテンツアイテム –

+0

のサマリー表示したい画像だけのIMGタグやURLあなたの答えのための –

答えて

3

にあなたはこのようにそれを行うことができます:あなたはこのようにそれを表示する必要が

@{ 
    var image = Model.ContentItem.Product.Images.MediaParts.First(); 
} 
<div class="col-sm-4"> 
    @Display(BuildDisplay(image, "Summary")) 
</div> 

をOrchardのImageはコンテンツアイテムですが、イメージURLをインラインでサイズを変更して表示する場合あなたは次のことを行うことができます:

@{ 
    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> 
+0

グレートを変更しています。私はちょうどplacement.infoに問題があり、現在のテーマのplacement.infoを参照してくださいカントビューの代替のように思えます。 –

1

URLを使用してハードコーディングする代わりに、Placement.infoを使用してメディアアイテムの要約の形を取得します。あなたのビューのオーバーライドで

<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> 
+0

おかげで、uが言ったように私は、やったいくつかの理由では表示されません。画像。そして、私がシェイプトレースを使うと、これにはplacement.infoファイルがありません。私の現在のテーマのルートにplacement.infoを認識していないようです。 –

+0

あなたの質問にあなたのplacement.infoを含めることができますか? – devqon

+0

ほとんど空です。これはです。Place Parts_Image_Summary = "ImageSummary:1" /> –

関連する問題