Try our conversational search powered by Generative AI!

Bartosz Sekula
Aug 6, 2019
(12 votes)

New version of EPiServer.Labs.BlockEnhancements (v0.2.0)

Last month we introduced the first version of the Block Enhancements add-on that was first introduced in 

It's a pleasure to announce that we have just released a new version v0.2.0 which contains a very useful improvement over v0.1.1 which we called Smart publish.

It is already available on our NuGet feed

The code is Open Source and is available on github  

We will really appreciate any kind of contributions: fixing bugs, issues in documentation, new features or translations, just let us know/create a ticket/PR if you want to help or have an idea about a potential improvement.

Previously, we had an extra command in the Global Menu which was called "Publish with local content items" which would analyze the "For This Page" folder and display a list of all local items and give the editor the ability to choose which ones to publish in a single operation.

There were two major issues with that approach:

  • The list might contain blocks that were not used on the page (but for some reason present in the 'For This Page' folder).
  • Only local blocks were displayed, shared blocks were skipped completely.

It looked like this:

Publish content with local blocks

And the command dialog:

Publish content with local blocks

After the update in version 0.2.0, the command is renamed:

And the new dialog will display much more information about the related content items:

As you can see, we are now able to traverse the dependency graph of each content item and let you publish all items in a single operation. 

This is very useful in scenarios like the above where you have some kind of "Layout blocks" with nested Content Areas.

Combining that "Smart" aspect of the new command with an existing "Inline Edit" feature makes quite a powerful combination:

Smart publish

A more advanced scenario can look something like this:

Smart publish with nested Content Areas

Of course, Content Area is not the only property that we support. In fact, all properties that implement the IReferenceMap (like ContentArea, LinkItemCollection, etc.) but also the TinyMCE rich text editor) will be included in the analysis and presented in the dialog.

Aug 06, 2019


Aug 6, 2019 09:34 AM

Nice, this addon is so close to what I've been waiting for, for so long. I like the inline edit but we tend to follow the Alloy wait of rendering blocks in preview pages so that you can edit the blocks as they will look on page. If we could get that so that blocks could be rendered through their view with the same editable properties on page that would be the best as you'd no longer need to navigate in to a block (like with your current inline version) and you'd get the best part of Episerver editing, the amazing WYSIWYG in page editing.

Bartosz Sekula
Bartosz Sekula Aug 6, 2019 09:51 AM

Scott, would it work for you if it worked like this:

  • In forms after clicking "Inline edit" you would get the block's form view in a dialog (as it is now)
  • However, when in OPE you would get the editable block preview in the dialog (with the correct Display Options applied)

Of course this is just a parial solution, I know, ideally it should be possible to edit the blocks directly on the page (even if they are a part of a property like Content Area).

This is already on our radar however the complexity of it requires a deeper analysis.

Aug 6, 2019 09:58 AM

That would help to a degree, but it's really the on page editing of blocks directly that's the biggy. I know it's complicatd as I asked David Knipe for this about 3 years ago lol :-)

But it would make the whole editing experience in Episerver that little extra level of golden.

Aug 6, 2019 10:42 AM

Great work though, these are some wonderful additons. 

Praful Jangid
Praful Jangid Aug 6, 2019 02:06 PM

That inline editing feature is really cool. And, in addition the smart publish will make editors life much easier. Awesome.

Jake Jones
Jake Jones Aug 6, 2019 08:46 PM

Nice work! 😎

Jacob Pretorius
Jacob Pretorius Aug 7, 2019 03:20 PM

That is very cool well done!

Darren Stahlhut
Darren Stahlhut Aug 7, 2019 10:39 PM

I agree with @Scott (as usual!), but I really like the new Smart Publish feature, this will definitely help our Clients who occasionally  struggle to find and publish nested content.

valdis Aug 8, 2019 08:23 AM

great success! thanks for all your effort on this add-on. just merge with core product :)

Arild Henrichsen
Arild Henrichsen Sep 10, 2019 07:54 AM

Thumbs up for Smart Publish, great work! 

nitin anand
nitin anand Apr 18, 2020 03:23 PM

cool, i would like to recommend this feature in all our projects.

Please login to comment.
Latest blogs
Fix your Search & Navigation (Find) indexing job, please

Once upon a time, a colleague asked me to look into a customer database with weird spikes in database log usage. (You might start to wonder why I a...

Quan Mai | Apr 17, 2024 | Syndicated blog

The A/A Test: What You Need to Know

Sure, we all know what an A/B test can do. But what is an A/A test? How is it different? With an A/B test, we know that we can take a webpage (our...

Lindsey Rogers | Apr 15, 2024

.Net Core Timezone ID's Windows vs Linux

Hey all, First post here and I would like to talk about Timezone ID's and How Windows and Linux systems use different IDs. We currently run a .NET...

sheider | Apr 15, 2024

What's new in Language Manager 5.3.0

In Language Manager (LM) version 5.2.0, we added an option in appsettings.json called TranslateOrCopyContentAreaChildrenBlockForTypes . It does...

Quoc Anh Nguyen | Apr 15, 2024