Implementing Partial Router

18 March 2016 EPiServer No comments

In last project I had to prepare a custom Partial Router. The part of the site consists of news home page which contains news articles. But there is also additional container page used by editors to group content. The scenario was very simple – the container page shouldn’t be displayed in URL. (more…)

Available content types grid plugin

2 February 2016 Admin mode, EPiServer 3 comments

In large scale projects we usually define several content types. I some cases i did struggle with dozens. For most of the types we are allowed to create just few types of child pages. For example ArticleList could be a parent page for Articles and Articles Archive. (more…)

Creating Dojo widget in TypeScript

21 January 2016 EPiServer, EPiServer properties 4 comments

Episerver edit mode use Dojo framework as a client side technology. When creating new custom property, gadget or command button we should use this JavaScript library to prepare user interface. To have static typing and class-based object-oriented programming I tried to create Dojo widget in TypeScript. In this article I will describe how to develop Alloy demo example StringList property in TypeScript. (more…)

Dashboard widget for Favourite contents

18 January 2016 EPiServer 4 comments

In my last article I described Editor’s Favourite contents functionality. The solution consisted of Add to Favourited button and Favourite Content grid widget. Both of those features were available in edit mode. When editor log in to CMS, he lands on Dashboard page. It could be an interesting feature if they could see the list of all their favourites there. I decided to further extend the functionality and prepared dashboard widget with readonly list of editor’s favourite contents. (more…)

Editor Favourite Contents

7 January 2016 EPiServer 3 comments

In one of our projects we have few hundreds pages managed by about thirty editors. They have access rights to all pages across the system and we don’t want to limit them. The number of content items is large, but each editor is responsible for updating just few pages related with the branch where he works. In the end most of the time they are working with same pages. To locate the content they have to expand few levels of site tree or find them using search functionality. It’s quite a lot of clicks. That’s why we prepared content shortcuts functionality – the Editor Favourite Contents. (more…)

PropertyList with images

22 December 2015 EPiServer, EPiServer properties 4 comments

The PropertyList is the new property introduced in EPiServer 9. It allows to use generic list on content model. List item property could be described with the same attributes as regular model properties. For example if we annotate property with Display attribute and set name, then name will be used as grid column header and as a label on the edit form. If we set the UiHint, like StringList then editing form will use selected editor. (more…)

Page & Asset trees synchronization

18 December 2015 EPiServer No comments

Page tree and Asset tree are kept separate and that’s definitely a good thing. It’s totally up to the editor on how to structure both pages and folders.

However in big sites that may soon become problematic simply because pages are strictly dependant on the files that are displayed in its body. It’s very important to make the files easy to find and reuse later on. (more…)

SEO friendly list using KnockouJs

12 December 2015 EPiServer No comments

In many scenarios we need to display page children as a list. Usually the list is not just a static HTML. It has to support additional features like sorting, filtering or switching between different item layouts. (more…)

Changing root for Content References property

4 December 2015 EPiServer, EPiServer properties No comments

EPiServer has a builtin Content References list property which is used to collect list of pages, blocks, or media. To add new reference, editor could D&D content or click Browse. Clicking Browse button will show dialog with content tree. (more…)

Sort order of module dependencies

25 November 2015 EPiServer 1 comment

EPierver has build-in initialization mechanism implemented with Initialization Modules. It’s used to initialize internal code as well as custom functionalities. All classes marked with InitializableModule attribute that implements IInitializableModule interface will be used to setup CMS. (more…)