For the next release of BlogEngine.NET we have created a much richer experience with the pages. In the 1.1 release a page was just a static entity that could be used for an “About me” page, that didn’t follow the chronology of the posts but lived on the sideline. That’s the basic idea of having pages supported by BlogEngine.NET.
Power to the pages
We wanted to give more power to the pages, so they could have a more central part of the blog. Normally you would have a multi layered menu for navigation – one with submenus based on the page hierarchy. To make this work we added a way to build a page hierarchy by selecting each page’s parent page, thus creating a tree structure. For the menu we are going to support the build-in ASP.NET menu control by creating a site map provider. So, now you can create real nested menus for your pages.
Then we thought that we could take it one step further. What about letting a page be the front-page of the blog instead of the post list? This would basically mean that you could build an entire website using BlogEngine.NET without using its blogging capabilities. To make it happen, there is now a checkbox that determines if a given page should be the front-page of the blog.
How to use the updated model
That means that in the admin section where you create and modify pages, there now is a dropdown list and a checkbox that wasn’t there in the 1.1 release. That is the only difference from the author’s perspective.
Theme designers can use these features to create something really powerful using the build-in ASP.NET controls such as the menu, bread crumb and treeview controls. These three controls automatically hook into the BlogEngine site map provider and display the pages automatically.
This is something the community has asked for occasionally since the first release, so it was about time we got a look at it. We really hope this is something you will find useful. Hopefully we can have a theme based on the new page model available soon so you can see how to take advantage of it. If you can't wait then go get the latest source code at CodePlex.