Umbraco 7 Get Media images by ID when using the Multi Media Picker to display a Gallery
Umbraco 7 Get Media images by ID when using the Multi Media Picker
This is usefull when creating a gallery of images.
1) In your Doctype add the Multiple Media Picker
2) Umbraco 7 Razor code snippet partial:
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@helper RemoveExtensions(string stringIn)
{
var thisTitle = stringIn;
thisTitle = thisTitle.Replace(".jpg", "");
thisTitle = thisTitle.Replace(".png", "");
thisTitle = thisTitle.Replace(".jpeg", "");
thisTitle = thisTitle.Replace(".gif", "");
thisTitle = thisTitle.Replace(".bmp", "");
thisTitle = thisTitle.Replace("-", " ");
thisTitle = thisTitle.Replace("_", " ");
thisTitle = thisTitle.Replace(" ", " ");
@Html.Raw(thisTitle)
}
@if(CurrentPage.HasValue("chooseImagesForGallery"))
{
<div class="row">
@{
var typedMultiMediaPicker = Model.Content.GetPropertyValue<IEnumerable<IPublishedContent>>("chooseImagesForGallery");
foreach (var item in typedMultiMediaPicker)
{
<div class="col-md-4">
<a href="@item.Url" data-fancybox="group" data-caption="@item.Name">
<img src="@item.Url" alt="" class="img-responsive"/>
</a>
<p>@RemoveExtensions(@item.Name)</p>
</div>
}
}
</div>
}
This is usefull when creating a gallery of images.
1) In your Doctype add the Multiple Media Picker
2) Umbraco 7 Razor code snippet partial:
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@helper RemoveExtensions(string stringIn)
{
var thisTitle = stringIn;
thisTitle = thisTitle.Replace(".jpg", "");
thisTitle = thisTitle.Replace(".png", "");
thisTitle = thisTitle.Replace(".jpeg", "");
thisTitle = thisTitle.Replace(".gif", "");
thisTitle = thisTitle.Replace(".bmp", "");
thisTitle = thisTitle.Replace("-", " ");
thisTitle = thisTitle.Replace("_", " ");
thisTitle = thisTitle.Replace(" ", " ");
@Html.Raw(thisTitle)
}
@if(CurrentPage.HasValue("chooseImagesForGallery"))
{
<div class="row">
@{
var typedMultiMediaPicker = Model.Content.GetPropertyValue<IEnumerable<IPublishedContent>>("chooseImagesForGallery");
foreach (var item in typedMultiMediaPicker)
{
<div class="col-md-4">
<a href="@item.Url" data-fancybox="group" data-caption="@item.Name">
<img src="@item.Url" alt="" class="img-responsive"/>
</a>
<p>@RemoveExtensions(@item.Name)</p>
</div>
}
}
</div>
}
Thanks for such a nice post. Its works perfectly when I loaded multiple images for my product.
ReplyDelete