Deployment of new pages from Local to Production

156 views Asked by At

I've a copy of DotNetNuke website on my local machine in which I've added few pages and created new modules. I've to move these new pages to production so have copied the pages to respective folders. I know there are few database entries that are also to be made on production database to recognize these pages and modules on production.

Please tell me how I can register these pages on production website

I searched on Google but may be I'm not getting the right keywords to search. Currently I've to restore my local db to production to run those pages. I'm using version 7 of DNN

3

There are 3 answers

1
Chris Hammond On

This isn't something that DNN handles very well, publishing from a local environment to production.

The most common way (Besides backup/restore of the database) is to use page Templates. You can "Export" a page in DNN, that will generate an XML document with the modules and content referenced into the portals/#/ folder (where # is the portal id)

You can upload that file to your production site (same path) and then create a new page based on that page template.

0
Joe Craig On

Your question implies that you are creating .aspx files and copying those to the production server. That really isn't the way that DNN works, and you probably are creating a real mess.

How did you create the pages on your local site? Did you use the DNN functionality to create new pages, add modules to those pages, etc.? Or, did you do something else?

Use the built-in funtionality to create pages on your local installation and, as Chris

0
tatigo On

To add modules - Go to your web site in production, login as super user, and install the module, then go to the page in the web site and add it. The same as you would do with 3rd party module. This will properly add the info to db.

To add pages - You could do it within the code, using the

  1. To create DNN page (the tab):

    TabController tbc = new TabController();
    
    //...populating the page's info 
    
    tbc.AddTab(destinationTabInfo);
    
  2. To create ascx control as global (meaning doesn't belong to any module) ModuleControl.

    var moduleControl = new ModuleControlInfo
                        {
                           ... populate the fields
                        };
    
    ModuleControlController.AddModuleControl(moduleControl);