We are moving our website to Drupal, but it isn’t easy!
As I work my way through the whole process, I would like some help. It would be great if I could have small number of Drupal users – who understand Drupal’s inner working well – to whom I can call on with specific questions. I don’t want to communicate with many users, as this would become tedious and slow.
In return, I would like to offer to the Drupal community detailed information, by way of example, of what I have done from start to finish. I will provide my php programs, well documented, in the hope that they can be modified as needed by others encountering similar challenges. This should probably become part of the Migrating to Drupal documentation. I would like, when I am finished, to also add to the documentation of the Drupal database tables and fields. I hope that the volunteers who come forward will also be willing to critique my contribution.
The major problem is that we are currently using a third party’s proprietary CMS (which I won’t identify, as it isn’t relevant), for which conversion tools are not available. Being proprietary, we also cannot ascertain the database structure, and in any case, we don’t know the credentials to access the database. But we can spider the site and save the pages as straight HTML files. So the problem consists of grabbing the appropriate pieces from the spidered backup and placing these into the appropriate table files in Drupal.
The site is bilingual (English and French), so there is the issue of language control.
There are also unusual items that perhaps have to be dropped in the conversion to Drupal. For example, some simple HTML/CSS is included in some of the page headings (allowing for italics when referencing book titles, or superscripts, etc.). For now, I am throwing this formatting away, but prefer to be able to keep it.
Moving a site provides an opportunity to restructure it, and clean it up. Therefore there is a requirement to map old content to the new.
Some of these issues I have successfully tackled. Some are problematic. For example, it is unclear how the options field in table menu-links, which is defined as a blob, is used or should be filled in. Leaving this with the default value of null often resulted in runtime errors. The Drupal tables are not all documented, and the documentation that is provided is minimal.
I have developed some programs to start me on the process, and am updating and adding to these as I go. They are designed to do everything from start to finish if run in sequence. This allows me to continually update the existing site, and rerun the process with the updated information, or to recover when I do something incorrectly.
I also use this as an opportunity to catch errors in the content. Many people have contributed content directly to the site, and they haven’t always followed the rules that we have established. For example, a colon on our French pages must always be preceded by a non-breaking space, but these are sometimes missing.
Many thanks in advance. I look forward to the challenges!