This article will explain the process and what happens when migrating a Layout Page to a Structure Page.
Layout pages have been a mainstay for portals for some time (except during that brief time where we made everything freeform). In 7.x, we introduced the Structures format of page. Layouts were nice but very restrictive on what you could do with them, and only knowledge of XML would allow you to create your own layouts. Structures solves that problem in a build-your-own-layout way.
However, there has not been a way to easily transition a layout page to a structure page to take advantage of the benefits structures offer, until the release of Portal Framework 7.5.1. This guide will walk you through migrating a page.
I have created a Layout page to migrate below. This is a layout consisting of a header, three columns, and a footer. I want to migrate it to a structure page.
At the top right, you will see a new icon on Layout Pages.
This icon, of overlapping pages, is the migrate button. This button will change your existing page from a Layouts to a Structure page. Not everyone has permission to see this button. Only workgroup owners and assistant managers with the Edit Page Design permission will be able to see the button.
Caution: Before migrating a page it is highly recommended to take a copy of the page or perform the migration on the same page in a sandbox portal. In case anything happens to the page, our tech support team will not be able to recover the original page unless there is a backup.
To migrate a page from Layouts to Structures, click on the overlapping page icon. You will get the following warning modal:
Click OK and you will get another warning modal. We want to make absolutely sure you want to do this procedure.
Clicking OK will start the process of converting the page.
The page conversion process happens as follows:
- If there is a header, a 1-column structure is created, and all islands in that header are assigned to that structure in the order they were displayed
- The main line of the layout is checked, either the only line, or the line beneath the header, and a structure with an even number of those columns is created (1, 2, or 3). Each island is moved into the particular column in the structure that it belonged to in the layout in the order it was displayed.
- If there is a footer, a 1-column structure is created after this and all islands in the footer are assigned to that structure in the order they were displayed.
- If there are any freeform islands that do not belong to any layout piece, a last 1-column structure is created at the bottom of the page, and all freeform islands are placed into that structure.
After clicking OK, the OK button will white out, and you may have to wait a minute for it to run. Do not navigate away from the page during this time. The page will eventually refresh. If all goes well, it'll look like the exact same page:
The only noticeable difference should be the icon for converting is missing due to this being a structure page.
Tips on migrating pages:
- If you have any freeform islands, they will be grouped at the bottom of the page. If you want them to be in the layouts, you will need to dock them in their island properties before doing so.
- Custom Layouts will not migrate properly. We suggest switching to a standard layout before doing the migration. After migration, you can create structures that mimic the old custom layouts.
- Making a copy of your page before migrating is recommended for safety reasons. If the migration has an issue, you can delete the migrated page and still have your old page.
- For any issues with migration, contact our technical support team.