I've had a very productive couple of days. Yesterday I set about seeing if I could somehow tame our incredibly bad taxonomy. The problem has been that there are numerous duplicate terms that only make sense when you look at their parent terms. So I was quite stoked to find that Drupal supported duplicate terms. After that it was a matter of getting the existing terms into Drupal. As usual, my first step was to search Drupal.org for some sort of import module. Sure enough, I discovered Taxonomy CSV import/export.
I don't even have access to the back-end of the systems yet, so what I ended up doing is logging into the current CMS (Commonspot) and pulled up the UI of the existing taxonomy. Then I popped that code into Notepad++ and performed some regex magic on it. Basically all I had to do is to get the format to be like this:
,second level term
,second lève term two
,,third level term
,another second level term
Essentially, it's a CSV with parent terms omitted. From there, it was very simple to import the taxonomy into Drupal using the import module. Total time, about an hour all told.
From there, I had to make sure there was a nicely formatted tree interface to select terms since the duplicate terms make it problematic to have a flat select. Again, turning to drupal.org to search brought up the Taxonomy Term Reference Tree Widget which was super simple to implement. It's quite configurable too, but for now, all I needed is a way for folks to select one or more terms which that module does very very well.
So that was yesterday.
Today I created a ported the 6 custom content types from Commonspot to Drupal. It was fairly straightforward, Drupal has custom widget support so I made sure to use the best field type for the data, so it took some time, but I think I am now ready to begin importing data from Commonspot into Drupal next week. I have some experience with Feeds, but not yet with Migrate, I think I might need them both for this job. Stay tuned next week for that story.