Take the community feedback survey now.

Alexander Haneng
Jun 29, 2011
  4675
(2 votes)

Using EPiImage with Page Type Builder (PTB)

I have gotten a few questions about how to use EPiImage with PTB. So in this blog post I thought I would cover the basics.

 

People have been using EPiImage with PTB almost since the start of EPiImage, but with the new 2.5 version it is even easier.

 

EPiImageProperty

Adding a EPiImageProperty to a PageType:

[PageTypeProperty(EditCaption = "Main image", Type = typeof(EPiImageProperty))]
public virtual EPiImagePropertyData MainImage
{
    get; set;
}

 

You can access the property directly:

Image url: <%=CurrentPage.MainImage.ImageUrl%>
Image description: <%=CurrentPage.MainImage.ImageDescription%>

 

Or use it with EPiImageResizer:

<%@ Register TagPrefix="EPiImage" TagName="EPiImageResizer" 
    Src="~/EPiImage/UserControls/EPiImageResizer.ascx" %>
 
<EPiImage:EPiImageResizer ID="Image" 
    PropertyName="MainImage" 
    Width="200" 
    Height="200" 
    Transformation="ScaleToFit" runat="server" />

 

EPiImageGalleryProperty

Adding a EPiImageGalleryProperty to a PageType:

[PageTypeProperty(EditCaption = "Image gallery", Type = typeof(EPiImageGalleryProperty))]
public virtual EPiImageGalleryImageCollection ImageGallery
{
    get;
    set;
}

 

You can access the property directly:

<%
foreach (EPiImageGalleryImage Image in CurrentPage.ImageGallery)
{
  %>
  Image Url: <%= Image.ImageURL %><br />
  Link Url: <%= Image.LinkURL %><br />
  Description: <%= Image.Description %><br />
  <%
}
%>

 

Or using EPiImageGalleryViewer:

<%@ Register TagPrefix="EPiImage" 
   TagName="EPiImageGalleryViewer" 
   Src="~/EPiImage/UserControls/EPiImageGalleryViewer.ascx"%>
 
<EPiImage:EPiImageGalleryViewer ID="Viewer"
    PropertyName="ImageGallery" 
    runat="server" />

 

Or using EPiImageGalleryGrid:

<%@ Register TagPrefix="EPiImage" 
    TagName="EPiImageGalleryGrid" 
    Src="~/EPiImage/UserControls/EPiImageGalleryGrid.ascx" %>
 
<EPiImage:EPiImageGalleryGrid ID="Grid" 
    PropertyName="ImageGallery" 
    ThumbnailHeight="150" ThumbnailWidth="150" 
    DescriptionHeight="20" DownloadLinkHeight="20" 
    Transformation="ScaleToFill" 
    ShowDescription="true" 
    ShowDownloadLink="true" 
    LinkThumbnailsTo="OriginalImage" runat="server" />

 

Download EPiImage

For more information about EPiImage and to download the module visit the EPiImage EPiCode page.

 

 

Posted by

Jun 29, 2011

Comments

Please login to comment.
Latest blogs
Content modeling for beginners

  Introduction Learning by Doing – Optimizely Build Series  is a YouTube series where I am building  a fictional  website called  TasteTrail , food...

Ratish | Sep 14, 2025 |

A day in the life of an Optimizely OMVP - Enhancing Search Relevance with Optimizely Graph: Synonyms and Pinned Results

When building search experiences for modern digital platforms, relevance is everything. Users expect search to understand their intent, even when...

Graham Carr | Sep 14, 2025

Optimizely CMS and HTML validation message: Trailing slash on void elements has no effect and interacts badly with unquoted attribute values.

When using the W3C Markup Validation Service, some annoying information messages pop up because Optimizely CMS adds the trailing slash to...

Tomas Hensrud Gulla | Sep 14, 2025 |

Turbocharge your strings - a case of display channels

When doing a routine performance test, during a CMS 12 upgrade, I was able to achieve 95% performance improvement. Let's look at SearchValues with ...

Stefan Holm Olsen | Sep 14, 2025 |

Opal Core Concepts

Before you dive into the code, it's crucial to understand the foundational ideas that make Opal tick. Core concepts are consistent across all its...

K Khan | Sep 13, 2025

Optimizely Opal : Reimagining A Utility Sector Use Case

  Introduction Customer engagement through timely and personalized push notifications plays a crucial role in todays Digital First landscape. In th...

Ratish | Sep 12, 2025 |