Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeOur CommunityOur CommunityGeneral Discuss...General Discuss...Automating porting static HTML site pages to a DNN site...Automating porting static HTML site pages to a DNN site...
Previous
 
Next
New Post
2/4/2011 8:06 AM
 
Hi All --

What is the best way to automate porting of a large static HTML site to a set of DNN pages with HTML modules?
Porting context:
- There are no images on the source site or referred images are from external resources;
- there is no special .css/.js used - just raw HTML text from the <BODY> part has to be ported.

I have code to parse source html pages to find all links/URLs referencing pages within that static site - I plan to automate replacing that links/URLs with new ones.

I have DNN site created.

The question is how to automate creation of DNN pages, inserting HTML modules in that pages,  inserting source HTML (with patched URLs) in that pages, and maybe also indexing/"SEOing" somehow DNN pages? If manipulating DNN tables's data directly is one of the best ways to go - I can do that - I just need to know what DNN tables will be involved in that porting process.

And the second part of my question: What is that new (for me) DNN main menu provider used on this DotNetNuke site? What built-in/commercial module is used to implement that menu? What DNN tables do store information presented in that menu? - I'd need to automate creation of this main menu entries too if any special actions will be needed to make it presenting ported static HTML pages...

Thank you.

-- Shamil
 
New Post
2/4/2011 10:46 AM
 
Hey Shamil,

I would suggest that you dont directly access the DNN database tables directly.  A better approach is to use the DNN API.

http://dotnetnuke.codeplex.com/releas... has the latest api documentation.

However if you do want to get some understanding of the database structure the latest erd documents are here

http://www.dotnetnuke.com/tabid/795/f...

With regard to seo/indexing - assuming you get thru the process of automatically loading the html onto your site.
DNN with reindex the new pages into its indexes for you, and will also generate an updated sitemap for you.

As for worrying about things like menu providers - again - I would look at the DNN api.

DotNetNuke.entities.tabs  is the namespace to look into for how to add pages

DotNetNuke.entities.modules  is the namespace to look into for how to add modules to a page

The basic steps you would need to follow are:

For each PAGE in you site you need to add a TAB
 - the tab is where you define the name of the page, keywords, descriptions, permissions, and also where it sites in the menu tree of your site - basically what TAB is its PARENT and its order in the MENU.  -  note you dont actually create a MENU - the menu is defined by the information you add to each TAB

On the TAB you then want to add a MODULE - in this case the HTML module

And once the MODULE is added - you want to populate it with your HTML.

Again using the API.






Westa
 
New Post
2/4/2011 3:06 PM
 
Shamil,

Trhe one issue you may run into is trying to host the DNN dll's outside of DNN. It is not as simple as referencing the dll's.   You are better of creating a DNN module that you can use to run your automated code.

Robert
 
New Post
2/4/2011 6:41 PM
 
Hi Westa,

Thank you for your reply.

I thought that using DNN API could be rather troublesome coding as I can't just reference DNN DLLs to use DNN API without/(outside of) running DNN instance? So I should probably develop a DNN module, and I wanted to have something like external independent utility connecting to local/remote DNN's instance back-end db using connection string...

But there exist also DNN API Web Service - http://dnnweb.codeplex.com/ ?
Is there anything else like that - maybe some advanced SOAP WEB Services?

Thank you.

-- Shamil
 
New Post
2/4/2011 6:46 PM
 
Hi Robert,

Yes, I will have to create a DNN module very probably to use DNN API.
I have some experience with DNN modules creation - I have got developed a few custom modules some time ago.

And second part of my question: how this DNN site menu is implemented? What module is used to make and run it?

Thank you.

-- Shamil
 
Previous
 
Next
HomeHomeOur CommunityOur CommunityGeneral Discuss...General Discuss...Automating porting static HTML site pages to a DNN site...Automating porting static HTML site pages to a DNN site...


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out