Ilesh Mistry’s Blog Post: Challenges & Success of the Pan Macmillan Project

We are really happy to welcome Ilesh Mistry, Kentico Developer at MMT Digital, here on the Kentico Devnet Blog. Ilesh has been kind enough to share his experiences while developing the project of Pan Macmillan, one of the largest general book publishers in the United Kingdom, in which various Kentico CMS features were implemented. Learn more about the challenges the team faced and how they used Custom Tables, Custom Document Types and Custom web parts to achieve their goals and produce a fantastic end result.

A little bit about me 

Hi, my name is Ilesh Mistry and I work as a Kentico Developer for MMT Digital. We have a number of offices in the UK and have been a Kentico Gold Partner for several years. I have been working on Kentico sites for a significant amount of time (since Version 3, in fact!) and therefore have garnered a good amount of experience and knowledge surrounding all the great product features Kentico has to offer.
This leads me on to what I am going to talk about in this blog post. We have recently completed a project for our client Pan Macmillan, using some of my favourite Kentico product features: 1) Custom Tables 2) Custom Document Types 3) Custom Web Parts and 4) Custom Portal Page Templates.
Just a bit of background info on Pan Macmillan: Pan Macmillan are one of the largest general book publishers in the UK, with imprints including Macmillan, Mantle, Pan, Picador, Macmillan Children’s Books and many, many more. They publish best-selling authors including, Jeffery Archer, Julia Donaldson and Brett Easton Ellis.

Client Requirements 

The multitude of imprints and author brands on Pan Macmillan’s roster has resulted in various design agencies creating and deploying many different websites and microsites.
This inevitably led to a diverse range of CMS solutions being distributed across a variety of hosting environments. There were two stand-out problems with this approach. Firstly, the websites were expensive to design and develop, and secondly, having a plethora of CMS solutions and hosting environments presented Pan Macmillan with management and content upload problems.
Our challenge was to provide a framework that would streamline Pan Macmillan’s online operations, be cost effective, easy to manage and offer bounteous capacity for creativity. Therefore, we created multiple landing pages using the four modules mentioned above. 
Custom Tables
Customs tables allow you to create a database with custom fields that collate information which can then be used elsewhere, such as in Document Types, Web Parts, etc. Data within custom tables can be managed without the need to use any database management tools like Microsoft SQL Server Management Studio. This is excellent for when you need to store an abundance of structured data items.
After consultations with Pan Macmillan, the fields that would be required were decided upon. The client wanted to ensure that the content of the fields, that determine the look and feel of the page, could be set by themselves. Some of the fields used are described below :-
1. A Theme Name field
2. Page background Properties: 
a. Field to add the background colour
b. Field to add a background image 
c. Field to select whether the background image should tiled or centred
3. Heading Web Font Properties: 
a. Field to add CSS font family
b. Field to add the font size
c. Field to add the colour of the heading
4. Add a CSS Spritesheet (image selector) field. This would select an image from the  Media Library, for the theme buttons that would be used on the page. 
As I am sure you are aware, separate CSS files would normally be created to achieve the above. However, we wanted to make these fields as easy as possible for the client to change whenever they felt the need, without having to ask us for help.
An example of some of the fields we used for the Custom Table are shown below:
The screen shot above shows how we have styled the labels and fields to make it easier for the CMS Desk User to read and follow without encountering any problems.
OK, so once the Custom Table was created, the next thing we needed to set up was Custom Document Types. 

Custom Document Types

Custom Document Types, along with the built in Document Types, allow you to extend Kentico’s system for powerful outcomes and effects. The fields for the document types can be used to extend what you require from the CMS Desk User. So you can use this information with something else, like JavaScript, to create features such as carousels and sliding panels.
So for the Marketing Landing Pages, we created a simple custom document type:
As you can see, the Custom Document Type has a styled Form tab and document type icons that make the readability and the CMS Tree aesthetically appealing for the CMS Desk User. 
We added a Theme Selector from the Custom Table. This field would call the Custom Table and show the themes using a Drop Down field and a SQL Query. The SQL Query we used is shown below:
     0 as ItemID, 
     'Please select a MLP theme' as ThemeName,
     0 AS Rank
FROM panmac_MLPThemes
This would allow the CMS Desk User to select a theme for their page, connecting the Custom Document Type with the Custom Table.
Having this information, our next step was to create the Page Template and Custom Web Part to extract the relevant information from the Theme Selector and produce the desired effects for the Marketing Landing Page. 

Page Template and Custom Web Part

We needed to create the Portal Page Template before we could build the Custom Web Part. 
The web part uses the Theme ID from the Custom Document Type using C# and calls the Custom Table to extract the relevant properties. 
These properties are then assigned to the elements on the page as CSS Properties using ASP Literals. For example, we used this to extract the page background colour from the selected Theme ID in the Custom Table. 
By knowing what Theme was selected, we were able to use the appropriate properties from the Custom Table and style the page accordingly.
This was the core functionality for the Custom Web Part. Once the web part was created, we had to make sure the web part was set up correctly in Site Manager and then assign it to the Page Template that was created. 


The Client now has a fully customisable framework, which they have greater control over, and they can create completely bespoke pages and microsites such as the Tony Robinson Weird World of Wonders microsite (shown below) which contains a game (created by Pan Macmillan and Aaardman Digital) that has had 11 million plays to date!
The client is extremely happy with the outcome of the project.  James Luscombe, Head of Web Development, said: 
“The new Marketing Landing Page functionality we developed with MMT Digital has enabled us to quickly and more cost effectively deploy sites. Previously these would usually require significantly more investment to build and produce. This isn’t at the expense of functionality, in fact the more we invest in our web platform, the more the sites benefit, as all functionality is available for us to use.  No additional development resource is required and the simplicity of creation means that our Web Content Editor can create the microsites with only design input needed.
There has been significant ROI from this project and it has enabled us to spend more time designing and creating content rather than managing the development of a new website. The collaborative nature of our working relationship with MMT Digital and the fact I can work directly with a Developer like Ilesh makes this possible.”
Please have a look at the examples of work we have produced below……

Pan Macmillan - missingink 

If you have any comments regarding anything in this post please let me know. 
Kentico Developer
Share this article on   LinkedIn

Katerina Rozsnyo Pelanova

Hi, I'm the Campaign Manager at Kentico and I take care of marketing campaigns and communication in social networks. So please stay tuned to our Facebook Page and follow us on Twitter to get hot news about Kentico.


Ilesh Mistry (MMT Digital's K-Team) commented on

Thanks Brian for your comments!

Ilesh Mistry (MMT Digital's K-Team) commented on

Thanks Rob! :-)

Brian McKeiver commented on

Ilesh, this is a great solution. I like how you have given the client control to a very fine level. The usage of Custom Tables to power the theme is a perfect example of how flexible the Custom Table feature is in Kentico. Congrats and well done.

Robert Yardy commented on

Great blog post Ilesh!