Portal Engine Questions on portal engine and web parts.
Version 5.x > Portal Engine > Best approach for phased conversion to CMS from traditional asp.net site View modes: 
User avatar
Member
Member
Andy - 6/16/2011 9:01:56 AM
   
Best approach for phased conversion to CMS from traditional asp.net site
Hi - I have a 5000 page site divided into say 10 main sections (little more details below).

Anyway, the issue is that I need to convert this to Kentico, but I need to do it in phases. I.e. 1 section every month. Ideally I need the existing .net site and the new CMS site to exist on the same host.domain, e.g. xxx.yyy.com, instead of them living in separate IIS web applications with different host headers.

I guess that i could put the existing site into a standard Kentico solution and merge the web.configs appropriately. Are there any best practices for this or lessons learned?

Ie is it better to use some clever use of IIS URLRewriting on the server to have the 2 sites separate, or maybe pull in the legacy stuff through a frame? Or just have the pages site side by side and use a manual sitemap file for the nav so that Kentico does not need to know about the non Kentico files?

90% of the current site is raw content with master pages and a few ascx controls. Then there are a few complex forms and web apps (things like event calendars).

Thanks!

User avatar
Member
Member
Andy - 6/16/2011 9:03:40 AM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
should add that the new site will be portal engine based CMS... although if someone suggests that it would be MUCH easier to port a very standards .net site to the asp.net Kentico approach, i am willing to listen to that too.

User avatar
Member
Member
lancetek - 6/16/2011 9:46:13 AM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
Hi Andy,
I'm doing something very similar right now, except I choose NOT to stage it side-by-side. I don't know about your situation, but it's easier for me to just build the new site in Kentico, import all the data and users and then eventually point the DNS to the new address.

I even needed to parse the legacy pages and tear out all the MS Word gumph that had been building up for years. Since all the pages had a common container layout, I was able to extract the body html that I was interested in and insert this info into the Kentico database using the API.

If you can use domains, subdomains or subfolders to split up the sites, you should be able to run them together.

re: sitemap - Kentico has controls that can iterate through a directory (eg filesystemDataSource), so you could use it to build a sitemap for navigation dynamically - but of course Kentico is just an ASP.NET application, so prettymuch anything you could do in ASP.NET, you can!

re: urlrewriting - Kentico has pretty awesome url rewriting, so you can give your pages any sort of url you'd like. In my conversion, I had to reuse the legacy urls, so I used the Kentico 301 redirect option to point visitors to my shiny, new, SEO-optimised Urls.

cheers,
Lance

User avatar
Member
Member
Andy - 6/16/2011 3:08:31 PM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
Thanks a lot for the response. So you are saying that you did NOT do it in phases, but just made it happen quickly though parsing in the old source content and loading it in through the API, such that you did not need to hash it out over multiple months.... therefore avoiding the running the 2 sites side by side?

That was my preferred approach to be honest, but the dept that owns the site wants to do it slowly for other reasons... which I won't go in to. Based on your response though I may see if I can convince them to let me just import via the API. There are quite a lot of user controls in the
<asp:Content/>
tags though, so I guess I will have to parse them out too... and programmatically inject a matching user control web part in between the regular editable text web parts.

If I did do it in phases and had e.g. the 'products' sections in kentico, but all the other pages (yet to be imported in later phases] just as real physical aspx pages in the kentico web project (feeding off of their old .master page as they have done for years), but not under control of the CMS, then that should work though, right?

Should I even consider the aspx approach for the CMS as opposed to portal pages? We are a decent .net shop, but we never really looked at using anything other than the portal approach because the aspx method seemed to be not recommended by anyone much (I read 'legacy' between the lines, but that was just my take)

On the URL rewriting, I was actually thinking more about using IIS UrlRewrite to have the 2 different (side by side) sites rewritten so that the URL change was transparent to the client browser, but now I think more about that, its almost certainly not possible. But I will explore the built in Kentico rewriting as that might give me a layer of abstraction that will help in moving the site around.

sitemap - that's useful. I did not know about that.

Thanks again

User avatar
Member
Member
Andy - 6/16/2011 3:15:37 PM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
Main problem I see with side by side is - Search. The full site search will be fragmented between the 2 CMS and non-CMS sites, although my asp.net site does use Lucene too so I could probably just open up both lucene indexes and query them both from my legacy code until everything is moved over to kentico.

User avatar
Member
Member
lancetek - 6/16/2011 3:55:01 PM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
Since you have access to most of the frontend and backoffice code, you should be able to write your own web part control and backing logic to merge the Lucene smart search. You may even be able to use the smart search web part and just point it at your non-kentico indexes.

User avatar
Kentico Developer
Kentico Developer
kentico_helenag - 6/19/2011 3:19:54 AM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
Hello,


You can also clone the Kentico Smart search web parts and add custom data to results dataset (~\CMSModules\SmartSearch\Controls\SearchResults.ascx.cs) or create a custom search provider.

These articles about nested web sites could be helpful for you:
Nested web sites
Multiple web sites on a single domain
Configuring nested web sites
Integration with your existing installation


Best regards,
Helena Grulichova

User avatar
Kentico Developer
Kentico Developer
kentico_helenag - 6/19/2011 3:20:14 AM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
Hello,


You can also clone the Kentico Smart search web parts and add custom data to results dataset (~\CMSModules\SmartSearch\Controls\SearchResults.ascx.cs) or create a custom search provider.

These articles about nested web sites could be helpful for you:
Nested web sites
Multiple web sites on a single domain
Configuring nested web sites
Integration with your existing installation


Best regards,
Helena Grulichova

User avatar
Member
Member
lancetek - 6/16/2011 3:59:58 PM
   
RE:Best approach for phased conversion to CMS from traditional asp.net site
I don't know what your site is, but you can create your own webparts, so you could maybe extract your legacy controls and replicate or wrap their functionality in order to reuse them on your new Kentico site.

At a stretch, you may even want to spider your own site and parse the html to extract the info you want to put into kenny. You could use something like HtTrack to grab your html and resources and write a little utility so parse them.