从Plone迁移到Drupal

I've been exposed to Drupal on a number of sites before, both as a user and as an admin, not least evolt.org. I'm very pleased with the performance, the open standards and the modularity of Drupal. And for quite a while, I'd been unhappy with the performance I'd been getting from my own site, which ran on Plone on a quite underpowered server.

As with most people, time's always short, so I just didn't get round to doing anything about it, until a disastrous upgrade of Plone unrecoverably failed (ok, I *could* have rolled back if I'd thought about it early enough), and forced my hand. So after a bit of thought, I went with the current 4.6.5 stable release, rather than looking forward to 4.7, or going with CivicSpace.

Making the Move

Having had a static "Gone Fishing" page for a week, I was very keen to re-open as soon as possible. Which meant a basic, existing theme (although please, please, please not Blue Marine...) I chose Bonsai as being Good Enough to get me going.

Then it was on to migrating the content. Sadly, Zope doesn't store the content in a nice easy RDBMS that lets you just pull out the content and import it. Although the Plone user interface was dead, the underlying Zope instance still had all my content objects accessible via the Web interface. So with a lot of copy/pasting, I could manually port the content.

I concentrated on recent and significant content, then watched my logs to see recurring 404s. Not all the old content is moved - I've particularly avoided migrating the Photos, as they'll get dumped onto Flickr eventually, and then I can just produce blog posts that pull in the images stored remotely. However, enough is now done to consider the migration near enough finished, and I can stop the Zope instance. If I spot anything else missing that looks important, I can restart it temporarily.

Once enough content was migrated to have a worthwhile site, I concentrated on the theme. I chose a fixed width layout, all based on a Golden Section grid, having been convinced by Genghis' words on the subject. Then I filled it with curvy, swoopy Web2.0 styling. And it's rather nice, even if I do say so myself.

Current Setup

Some of the key modules I'm using:

Aggregator
I have content spread out in a number of other places - flickr, the Evolt Spool and others. Bringing in what I store elsewhere is important.
CV Builder
The site acts somewhat as demo-ware - it'd be nice to be able to have a CV to hand, linked to the feedback form... Hey, I'm always open to offers :-) (Note that I haven't built my CV yet, but it's en route)
Flexiblock
It's how I do the blocks in my footer - the flexibility is just amazing, and really helps you get away from the standard Drupal look.
GSiteMap
All together now: "What a friend I have in Google..."
Path
Without this, migrating the old content would have been near pointless, as I'd have suffered such appalling link-rot. The Path module let me put all the content back at the same URLs.
Spam/Spam_SURBL
No point in accepting Trackbacks & Anonymous Comments if you're not protected against spam. I got my 1st trackback spam within about 3 days of opening the site.
Tagadelic
Produces a nice flickr-like Tag cloud
VimColor [sic]
Beautiful colour[sic] coding of code in almost every language I've used, and a whole load I haven't.

Things I miss

Principally it's Structured Text, and not just because I had a fair quantity of content in STX to migrate. I particularly like STX's easy handling of lists.

I also miss Web Based editing of templates - I now need to be at home (or with SSH to hand) to update the design. I regularly work remotely in client environments that allow me Web access, but not SSH.

But am I happy? Yes, very much so. As well as the performance, there were just too many wee things that Plone didn't provide Products (similar to Modules, but you have to restart the Zope instance) for, and I'm relieved to be running on a standard LAMP stack.

It's all goodness - roll on 4.7!

秦风汉月's picture

wiki != stx && wiki ~ stx

It doesn't provide STX, it provides wiki formatting, which is similiar, but yes on all input. You could write your own STX filter if you so wished. It would allow you to enter STX everywhere.