I've been working with wordpress a long time. Since early 2005 IIRC. So I'm rather reluctant to give it up.
The main problem is that it's a hard system to make into a fully-fledged website. It was designed to be a blog -- an extensible blog, mind you -- and anything else is just an add-on hack. The 'pages' metaphor is teh suck.
When using a CMS, make sure that you understand what it is capable of. Or find someone who does. Or find someone who doesn't want to cheat you out of a boatload of money.
Otherwise, you'll end up like this person mentioned in this post and solicit $80k (or $25k) in donations to build a 'new system' because you demonstrate a serious deficiency of understanding how it works.
The source post I've linked to contains a lot of sarcasm, but here's the technical rundown.
$80k to do what?
I've been working with the CMS Drupal since about February now, and I must say that I'm amazed with it.
On the surface, Drupal is almost scary complex: the stock install has many options and many features. Beyond this there's a large library of third-party modules, and a very involved developer community which has produced the very extensive handbook covering every facet of Drupal.
And you aren't stuck with the default theme, or the default look and feel. Theming a site is relatively straightforward: it's just as easy as a Wordpress theme, perhaps even easier. If you are content with a pre-built theme, there is an extensive directory of themes created by third parties
You can theme specialized functions: most of the modules that have been in development for some time have functions you can override to customize the look and feel of particular site components. This makes it very, very easy to customize your site without needing to change the core code at all.
So where to start? Download and install 5.2 (the newest as of this writing). 5.x has a nice web-based installer whereas earlier versions didn't. It's much more user-friendly.
A caution: if you use 5.2 you can only use modules and themes intended for Drupal 5.x: Drupal 5.0 broke backwards compatibility with existing modules and themes.
The handbook is the place to start, but where? Some good spots are:
- The Installation Guide
- Basic Configuration
- Start with a Theme and the core modules
- Once you have an idea of what features you want but don't have, you can search the contributed modules to try and find something to make it work
- If you do development for drupal, The API reference will be your friend. So will an an account on drupal.org, so that you can filter modules and themes by Drupal version.
Drupal is very complex, and very powerful. Be prepared to spend many hours understanding it, and expect to spend spend time hitting dead ends when you first start using it.
Regardless of the complexity, it is worth knowing how to use. But it's not for everyone. Or many hosting providers. The wikipedia page outlines the technical difficulties:
The installation of Drupal (and its modules) requires access to a database as well as certain high-level privileges, including the ability to use SQL commands such as SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, and LOCK TABLES. Some Web hosting providers, however, do not offer these features. Anyone who wishes to use Drupal should ensure that their host offers these features before they begin installation.
At first that may not seem significant, but you'd be surprised how many providers don't give regular users the ability to use LOCK TABLES.
So who's using Drupal? Many, many sites. If you see '/node' in the URL at any point, that's a good giveaway.
Drupal creator Dries Buytaert has a category index of posts which list drupal-based sites. Even Jabber is relaunching their site using drupal.