Ticket #904 (new maintenance)

Opened 9 months ago

Last modified 9 months ago

Issues to consider in the migration from Drupal to WordPress

Reported by: chris Owned by: chris
Priority: major Milestone: Maintenance
Component: Live server Keywords:
Cc: ade, sam, paul Estimated Number of Hours: 0.0
Add Hours to Ticket: 0 Billable?: yes
Total Hours: 1.0

Description

A few weeks ago Ade said he though it would be worth me opening a ticket to use to flag up some issues to be considered in the migration of the Transition Network site from Drupal 6 to WordPress.

Change History

comment:1 Changed 9 months ago by chris

  • Add Hours to Ticket changed from 0.0 to 0.5
  • Total Hours changed from 0.0 to 0.5

Static Archive

I would suggest it would be worth generating a static archive of the Drupal site using HTTrack, this is quite simple to run from the command line on a server, an example of the output generated is the Totnes Drupal Site Archive. Ideally forms would be disabled before doing this (search and such like won't work with static HTML!), but this can also be done using CSS tricks to replace all the forms with some text, see for example how this was done for the static In Transition Movie archive, I'd be happy to sort this out.

Importing Content

I would suggest that every attempt should be made to import as much of the existing content as possible and for it to remain on the existing URLs so as to ensure that as few external links into the site as possible are broken, as Tim B-L pointed out around 18 years ago, Cool URIs don't change.

Last time the site was moved, in 2011, from a wiki which is archived here and here a fair amount of work was put into sorting out Apache redirects to ensure that most people found their way onto the right pages, but more could have been done -- there were huge numbers of 404's from people following old links for years afterwards.

So looking at one example article:

this URL should be able to be replicated in WordPress using the permalink settings, something like this:

/blogs/%author%/%year%-%monthnum%/%postname%

The images should also remain on the existing URL's if possible, even if we end up having to host a set from Drupal and in addition import the images into WordPress, the article above has one image at this URL:

Importing the user accounts and permissions and their relationship to content is also a consideration so that authors of content are able to edit their imported content.

If content is unable to stay on existing URLs then I'd be happy to help sorting out Apache rules to ensure that as many URLs as possible still work.

comment:2 Changed 9 months ago by paul

  • Add Hours to Ticket changed from 0.0 to 0.5
  • Total Hours changed from 0.5 to 1.0

Great advice!

A couple of related things you'll want to consider as part of the migration :

Drupal aliases (Existing aliases for node paths)
https://www.transitionnetwork.org/admin/build/path

Existing 403 redirects
https://www.transitionnetwork.org/admin/build/path-redirect

You'll probably also need to investigate menu and taxonomy from the perspective of preventing broken links:

https://www.transitionnetwork.org/admin/content/taxonomy/
https://www.transitionnetwork.org/admin/build/menu

Note: See TracTickets for help on using tickets.