dotnetnuke how to copy pages programatically - dotnetnuke

I have thousands of pages which i need to export from qa to production. I have seen the export page function but is there a way to do this in batch? I have found code to create pages but not to extract them. All permissions and settings must also be copied.

You could use the Portal Templates (export) feature found under the Host/Sites page.
That will generate a template for the site, then you could transfer that to production (that would be a couple of files) and "apply" that template to your existing site.
The other option would be to backup/restore the database, that is how most people handle changes between staging/production. Though that assumes any changes already made in Production exist in Staging.

Related

Can't edit certain pages on DNN site after upgrade to 9.01.01

We recently upgraded one of our client sites to 09.01.01 to address a Telerik vulnerability, and then had to migrate the site from managed.com to Azure due to manage.com's outage. After the upgrade, a couple of pages on the site have been uneditable using the pencil icon in the persona bar, although the rest work fine. We're aware of the workaround of going into content > pages and clicking the pencil icon there, but even then not all of the areas on the page are editable. For example, there's one instance of the HTML module on the homepage where when you click on its pencil and then click "Edit Content," it just displays a pop-up with the text but no WYSIWYG or way to actually edit. Other instances of the HTML module work fine, on other pages and even other areas of the homepage.
What's more bizarre is that we just spun up another Azure VM and created a dev site from a clone of the live site so we could troubleshoot further, and this problem does NOT occur on that site even though it's an exact copy of the live site files and database and both sites are hosted in Azure.
Does anyone have advice on what might be causing this or how to troubleshoot? My original though was to clone the page and start removing modules one by one to see if anything made a difference, but it doesn't actually remove the module when I click delete. I've read about ways to do this directly in the database, but I'd prefer to avoid that if possible, especially since we're not seeing the same problem on the cloned site.
Thank you!
Could you please see if any error appearing on the logs folder? You can see the logs here. /Portals/_default/logs/2021.02.01.log.resources? The log file name may differ based on website's logging configuration.
A similar thing can be seen from the Personal bar as well using Admin Logs.

Migrate views in drupal 7 easily - D7

I want to migrate all views from my local site to another site.
I know there is a module "Migrate" which allows you to do data migration but I don't know how to use it.
Can you give me some tips?
Thanks in advancej
Not sure what you mean with migrating views to another site. In Drupal, the migration concept is usually associated with actually migrating data - a view is actually just a way to query and display this data.
Typically moving a view to a different site, assuming data structures are the same in both can be accomplished by either exporting the view (one of the options while browsing the views on admin/structure/views) or, if it's not just a one of, by featurizing it which is a process that takes a few more steps.
It's only applicable for drupal site to drupal site
First download features module and enabled in both sites.
Go to admin-structure > features > create feature.
In that you can see General information(left side) and Components(right side). The General information provide some name in the name fields and you can see views in Components. You just select what are all views are needed for that site.Click the Download feature button.
It will downloaded!!!
After that copy the downloaded file to new drupal site which has drupalroot > sites > modules.
Go to your "new drupal site" as (Admin-Structure > feature). You can see the folder name as list in that. Enable the folder name list and click "Save settings". After the save setting finished as good then deselect the folder list, click "save settings" and delete the downloaded folder in module folder.
Note:
The folder name list should not state as conflict. If it presents, then click the recreate button.

Deployment of new pages from Local to Production

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
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.
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
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
To create DNN page (the tab):
TabController tbc = new TabController();
//...populating the page's info
tbc.AddTab(destinationTabInfo);
To create ascx control as global (meaning doesn't belong to any module) ModuleControl.
var moduleControl = new ModuleControlInfo
{
... populate the fields
};
ModuleControlController.AddModuleControl(moduleControl);

Keep content from database when updating database.

I have a website live on the web. I've been working on the re-design for the site. I duplicated the entire site and database and worked on a test site. Now the test site is ready to go live. However, the current live site has been up for the last few weeks and content has been added as usual. How do I upload my new look for the site, with the changes I've made in the test database but at the same time not overwrite any content changes made in the current live database that were made over the past few weeks?
I want to keep the site content in the database but overwrite any module or theme data with the data from the test database.
My site is built on drupal
Thanks!
1) Upload new theme - this will apply themes changes and keep content in the live DB
2) If you have added any new content types, blocks, fields etc to your dev site then install the features modules. This will allow you to export your new features to a module, and then you can add this module to the live site to import your new features.
See this post for further discussion on the topic.
I used https://drupal.org/project/data_export_import it seems to be working well.

Salesforce: environment-specific variable replacement in a custom button url

I have a custom Salesforce (Summer '11) button. Clicking the button navigates the user to a url in a new window. The url points to my own custom web app. (It does not point to the same url as that of the salesforce environment).
I want this url to be configurable for my dev, staging and live environments, so that the button in the SalesForce dev environment points to the app's dev environment, and so on.
If possible, what's the best way to achieve this, given that I'll be deploying the customization in dev (inc. button, but other things too) via a changeset which I'll push to the staging and live environments?
You would want to implement this using a custom setting. Sadly it's not yet? possible - we need to vote: success.salesforce.com/ideaview?id=08730000000I5NsAAK
As long as your button URL is pointing to a relative path rather than the full path including the server instance (and, of course, as long as the path exists) your button will work across server instances without any fuss.
For example, do: /{!Account.Id}/e? etc.
do not: https://eu1.salesforce.com/{!Account.Id}/e? etc.

Resources