Take the community feedback survey now.

Ben  McKernan
Jun 12, 2015
  6452
(3 votes)

Modifying the default view components

I have recently received a lot of questions via support and on the forums about how to change the components that are available by default in the CMS view, e.g. removing the media component. Most people believe that this is not something we support, which is not strange considering the lack of documentation about it. Linus Ekström blogged about this over two years ago now, you can see that here, so I think it is time for a little reminder about how it is done. Note: the following only works for views that have not been modified by the user, e.g. the user has not added any components to their view.

Via Configuration

The simplest way to add or remove components is via configuration in the web.config. The problem is knowing what a component is called and the area path where it is plugged into in order to make this configuration work. This is most likely the reason for people not knowing that this was possible. The following code will remove the media component from the right panel:

<episerver.shell>
  <viewManager>
    <views>
      <add name="/episerver/cms/home">
        <settings>
          <add name="RemoveMediaComponent" 
               transformationType="Remove"
               definitionName="EPiServer.Cms.Shell.UI.Components.MediaComponent"
               plugInArea="/episerver/cms/assets/defaultgroup" />
        </settings>
      </add>
    </views>
  </viewManager>
</episerver.shell>

As you can see there are a lot of magic strings here. A lot of this information would probably need to be reflected out of the assembly unfortunately. The same code with the transformationType set to Add would add the component to the given plug-in area. Plug-in areas are available as constant strings on the PlugInArea class if you want to add a component somewhere.

Via Code

There is also a way to transform the view via code although I am not sure it is any easier. Basically you can implement a IViewTransformer class and mark it with the ViewTransformerAttribute. This will then run when the view is being loaded so you can add or remove any components then via code.

Jun 12, 2015

Comments

Please login to comment.
Latest blogs
Optimizely Web Experimentation on Single Page Applications

  Introduction Most of the modern web applications are built as Single Page applications (SPA) which provides a quick and smooth experience to the...

Ratish | Nov 16, 2025 |

Optimizely CMS - Learning by Doing: EP07 - Create Controller/View for Pages

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

Ratish | Nov 16, 2025 |

Multiple Languages in Optimizely CMS

I was exploring multi-languages in Optimizely CMS 12 – able to figure it out quickly in a few steps. Let’s get started. 1. Enable Languages... The...

Madhu | Nov 15, 2025 |

Optimizely CMS RSS Feed Integration Library — Version 2 Release

Optimizely CMS Easy RSS Feed Integration Library — Now in v2 A while ago I launched a NuGet-package called DavidHome.RssFeed to make RSS feed...

David Drouin-Prince | Nov 15, 2025 |