A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Grzegorz Wiecheć
Nov 5, 2018
  12087
(14 votes)

Improved image property

In Episerver 11.12.0 we have improved the image property. The property content selector now offers the same functionality as the Media Component that you have in the assets pane.

 

Uploading images

One often requested CMS feature is the possibility to upload new images without having to close dialog. This functionality is now available in the new property. Editors can upload images using an "Upload files" button or drop the images directly from their computer.

Content actions

The media selector has much more useful features comparing to the standard content tree widget, which can be used when selecting an image. Editors can change the folder structure, download and edit images, etc. All functionalities of the media component are available.

Using new image property

To show the image property in edit view the "Image" UIHint should be used.

public class ProductPage: PageData
{
        [UIHint(UIHint.Image)]
        public virtual ContentReference PageImage { get; set; }
}

This is the same key that was used for the old image property which means that new property will replace the old one without any code changes.

Support for other media types

The new property can be also used to select other media types, for example, videos. To add a new video property, the "Video" UIHint can be used:

public class ProductPage : PageData
{
        [UIHint(UIHint.Video)]
        public virtual ContentReference Video { get; set; }
}

Displaying media types that don't have an explicit UIHint is controlled by the AllowedTypes attribute. For example, if the site has PDF files and they should be selected in ContentReference property, the code should look like this:

public class ProductPage : PageData
{
        [UIHint(UIHint.MediaFile)]
        [AllowedTypes(typeof(PdfData))]
        public virtual ContentReference Video { get; set; }
}
Nov 05, 2018

Comments

Nov 5, 2018 04:27 PM

Good work, I've just removed the addtions to make this work before and upgraded. All working for me :-)

Henrik Fransas
Henrik Fransas Nov 6, 2018 07:39 AM

Great news and great work as always!

Thanks!

Nov 6, 2018 07:44 AM

Oooh nice!

Peter Gustafsson
Peter Gustafsson Nov 7, 2018 12:51 PM

Excellent stuff!

A very welcome feature.

-- This comment has been filtered by Sarcasm-detector-bot-v3.2

Henrik Fransas
Henrik Fransas Dec 7, 2018 08:15 AM

This is so great and one of the first time I have heard editors pretty much scream out "YES!!"

Muhammad Kashif
Muhammad Kashif Jul 21, 2019 10:30 PM

Hi Grzegorz -  it looks really cool but having an issue to specfiy custom 'Roots' for images folders . In previous Content selection editor we were specifying the custom root folder by overriding Roots property of EditorDescriptor but now it no longer seems to work - I've tried by overriding both  ImageReferenceEditorDescriptor and ContentReferenceEditorDescriptor and it always ignores 'Roots'. Could this be please looked at?

Please login to comment.
Latest blogs
Looking back at Optimizely in 2025

Explore Optimizely's architectural shift in 2025, which removed coordination cost through a unified execution loop. Learn how agentic Opal AI and...

Andy Blyth | Dec 17, 2025 |

Cleaning Up Content Graph Webhooks in PaaS CMS: Scheduled Job

The Problem Bit of a niche issue, but we are building a headless solution where the presentation layer is hosted on Netlify, when in a regular...

Minesh Shah (Netcel) | Dec 17, 2025

A day in the life of an Optimizely OMVP - OptiGraphExtensions v2.0: Enhanced Search Control with Language Support and Synonym Slots

Supercharge your Optimizely Graph search experience with powerful new features for multilingual sites and fine-grained search tuning. As search...

Graham Carr | Dec 16, 2025

A day in the life of an Optimizely OMVP - Optimizely Opal: Specialized Agents, Workflows, and Tools Explained

The AI landscape in digital experience platforms has shifted dramatically. At Opticon 2025, Optimizely unveiled the next evolution of Optimizely Op...

Graham Carr | Dec 16, 2025

Optimizely CMS - Learning by Doing: EP09 - Create Hero, Breadcrumb's and Integrate SEO : Demo

  Episode 9  is Live!! The latest installment of my  Learning by Doing: Build Series  on  Optimizely Episode 9 CMS 12  is now available on YouTube!...

Ratish | Dec 15, 2025 |

Building simple Opal tools for product search and content creation

Optimizely Opal tools make it easy for AI agents to call your APIs – in this post we’ll build a small ASP.NET host that exposes two of them: one fo...

Pär Wissmark | Dec 13, 2025 |