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

ling
ling  -  CMS
Jan 19, 2021
  10375
(12 votes)

Move inline block edit from Labs.BlockEnhancements to CMS UI

Features in EPiServer.Labs.BlockEnhancements have been used and appreciated by many users. The most common feature - inline editing, now becomes a part of the product and will be available from CMS UI 11.32.0.

Inline Edit

Using the Quick Edit command from the context menu, editors can edit blocks without changing the current content context. The command is available in Forms View, On-Page Edit and the assets pane.

inline edit.gif

The command opens a dialog box with an editable block form. Editors can edit blocks the same way as when switching to blocks editing context.

By default, the Name, Categories properties and the Setting tab are hidden. This developer guide topic shows how to enable them with InlineBlockEditSettings attribute.

The bottom-left button mirrors the main button in the Publish menu, so it can be Ready for Review, Ready to Publish, Publish or Publish Changes. It helps editors to change the block's status directly from the inline edit dialog box.

image34my.png

For block content types that have properties in more than one tab, those tabs are replaced with sections in the inline edit dialog box. Below is an example of a block type which is configured to show Name property and Setting tab, and has property in three tabs - Contact, Products and Content.

    [SiteContentType(GUID = "9E7F6DF5-A963-40C4-8683-211C4FA48AE1")]
    [SiteImageUrl]
    [InlineBlockEditSettings(ShowNameProperty = true, HiddenGroups = "")]
    public class AdvancedBlock : SiteBlockData
    {
        [Display(Order = 1, GroupName = SystemTabNames.Content)]
        public virtual string Text1 { get; set; }

        [Display(Order = 2, GroupName = SystemTabNames.Content)]
        public virtual string Text2 { get; set; }

        [Display(Order = 1, GroupName = Global.GroupNames.Products)]
        public virtual string Text3 { get; set; }

        [Display(Order = 2, GroupName = Global.GroupNames.Contact)]
        public virtual string Text4 { get; set; }
    }

images5vtv.png

Note: For people who use Labs.BlockEnhancements and Labs.ContentManager:
If you have a previous version of EPiServer.Labs.BlockEnhancements installed, you should upgrade to the version 0.10.0 as it is compatible with CMS UI 11.32.0
Compatible version of Labs.ContentManager to work with CMS UI version 11.32.0 is coming soon.
Jan 19, 2021

Comments

Stefan Holm Olsen
Stefan Holm Olsen Jan 19, 2021 05:49 PM

Very nice 👍

Erik Henningson
Erik Henningson Jan 21, 2021 07:10 AM

Great to see that the CMS part isn't forgotten. A great editor experience is a key to success.

Luc Gosso (MVP)
Luc Gosso (MVP) Jan 21, 2021 08:03 AM

Waited for this, why not use tabs? =)

Mike Malloy
Mike Malloy Jan 29, 2021 07:54 PM

I agree with @GOSSO, use tabs.

Would be nice if it worked in the All Properties view.

Linh Nguyen
Linh Nguyen Feb 1, 2021 02:43 PM

@GOSSO, @Mike: I should have used tabs in the demo, but tabs is supported.

@Mike: It works in All Properties view as well

Luc Gosso (MVP)
Luc Gosso (MVP) Feb 7, 2021 08:33 PM

"you should upgrade to the version 0.10.0"? shouldnt you make clear that you can uninstall Labs.BlockEnhancements, also seems that Advanced.CMS.Forms should be uninstalled ? 

Linh Nguyen
Linh Nguyen Feb 19, 2021 11:38 AM

@gosso: Labs.BlockEnhancements has other features that people might still use (smart publish, inline publish, status indicator...), for those they should upgrade to 0.10.0 to make Labs.BlockEnhancements compatible with CMS UI. I haven't checked Advanced.CMS.Forms, but we do have some issues with compatible versions of Advanced.CMS vs CMS UI 11.32.0

Jonas Boman
Jonas Boman Oct 24, 2022 08:41 AM

Thanks Linh Nguyen for this. 
Is it possible to have the help-text for each property visible?

Linh Nguyen
Linh Nguyen Oct 24, 2022 06:26 PM

Hi Jonas,

The help-text should be visible for those properties that have.

Please login to comment.
Latest blogs
CMS Audiences - check all usage

Sometimes you want to check if an Audience from your CMS (former Visitor Group) has been used by which page(and which version of that page) Then yo...

Tuan Anh Hoang | Dec 12, 2025

Data Imports in Optimizely: Part 2 - Query data efficiently

One of the more time consuming parts of an import is looking up data to update. Naively, it is possible to use the PageCriteriaQueryService to quer...

Matt FitzGerald-Chamberlain | Dec 11, 2025 |

Beginner's Guide for Optimizely Backend Developers

Developing with Optimizely (formerly Episerver) requires more than just technical know‑how. It’s about respecting the editor’s perspective, ensurin...

MilosR | Dec 10, 2025

Optimizely PaaS Administrator Certification : Free for Everyone

Optimizely has recently launched a free PaaS Administrator Certification. https://academy.optimizely.com/student/activity/2958208-paas-cms-administ...

Madhu | Dec 9, 2025 |

Fixing TinyMCE Initialization Failures in Optimizely CMS: A Hidden Pipeline Issue with .NET SDK Versions

Over the past few weeks, several Optimizely CMS projects began experiencing a puzzling failure: XHtmlString fields stopped initializing TinyMCE in...

Francisco Quintanilla | Dec 9, 2025 |

Jhoose Security Modules v2.6.0 — Added support for Permissions Policy and .NET 10

Version 2.6.0 adds Permissions Policy header support, updates to .NET 10, improved policy management, configurable security settings, and enhanced...

Andrew Markham | Dec 6, 2025 |