Try our conversational search powered by Generative AI!

Magnus Stråle
Jun 22, 2010
  11580
(1 votes)

Page Type Builder and EPiServer CMS

Page Type Builder (a k a PTB) by Joel Abrahamsson is one of the most popular Open Source projects for EPiServer CMS developers. It helps increase developer productivity when creating EPiServer solutions. See http://pagetypebuilder.codeplex.com/ for information and links.

A History Lesson

Let's go back to EPiServer 3. It was built on ASP with a few COM objects thrown in for good measure. ASP used VBScript as the programming language and VBScript is not exactly a strongly typed language (remember VARIANTs?). To make the data for a page available to the ASP template developer we used a Scripting.Dictionary - basically the same as a Dictionary in .NET.

When we started to develop EPiServer 4, moving to the .NET platform, we needed to remain fairly compatible with the page template development model in EPiServer 3, but still benefit from the .NET framework. PageData was the perfect middle-ground: the "well known" data could be accessed in a strongly-typed manner and the data defined at runtime was accessed with untyped "dictionary syntax".

Looking at the projects done with EPiServer 3 there was usually a need to start to feed the site with information before the development of page templates was done. By allowing somebody without programming skills to define the page type and having that as the basis for what we display in edit mode, it was possible for users to immediately start entering information into the site.

Page Type Builder - A Perfect Complement

PTB is an excellent solution for those people that want a strongly-typed model for their page template development as well as circumventing the issue of synchronizing changes to the page type definition.

This means that you can have the best of two worlds - the "EPiServer classic" approach or the "code only" PTB approach. The choice is yours!

Why don't EPiServer simply take/buy PTB and provide it out-of-the-box? As good as PTB is, it is not the ultimate solution but a way to add features that are complementary to the original design decisions.

We will gladly help Joel and anyone using PTB to try to ensure that it works as well as possible, but we will not do PTB ourselves, nor can we guarantee that PTB will work with all EPiServer modules (although we will certainly try).

The Future

EPiServer CMS will provide a way to support strongly typed models. EPiServer CMS will probably move towards a more declarative approach for working with page types, reducing the need to work with a page type UI.

I will not make any promises as to when this will happen. The purpose of this blog post is to give the official EPiServer view of PTB, not to spill the beans on our development plans.

Jun 22, 2010

Comments

Sep 21, 2010 10:33 AM

Well put!

Sep 21, 2010 10:33 AM

Great post Magnus.
/ Paul Smith

Thusitha Hettige
Thusitha Hettige May 10, 2013 09:15 AM

PTB is good, if it works with EPiServer 7. Currently throwing an exception.

Please login to comment.
Latest blogs
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

Optimizely Search & Navigation: Boosting in Unified Search

In the Optimizely Search & Navigation admin view, administrators can set a certain weight of different properties (title, content, summary, or...

Tung Tran | Apr 15, 2024