Best open-source PHP CMS 2008

October 26th, 2008. Tagged: CMS, packt, php

It's that time of the year again. Time to cast my vote as part of the jury in Packt's open-source awards, category "PHP CMS".

(for my last year's rant, check the internet archive copy)

How to judge a CMS?

How to judge a CMS? Tough one. How do you judge any piece of software anyway?

Features? Usually any system or product lists the features in way meant to wow you, I mean a list of features always looks nice, it's a sales tool. And the features don't mean that much, actually some say, you should underfeature the competition. Of course, you can't take that to the extreme and build software that does nothing. You need features, but the best CMS doesn't mean the one with the most features, neither the one with less. You just need the right mix and "right" may wildly vary depending on the task. Are you building an e-commerce site, a library of articles, a 5-page business card-like site, on online community? No way to judge a system without an idea of what you want it to do for you. And no way what you want to do is what everyone else wants to do.

Quality? This is much easier. Does the code validate, YSlow score, accessibility, etc. Easy, even automated, but again, the system can be written beautifully but doesn't do the right thing or work the right way.

Documentation? A must-have, usually a problem with any software. Can be too specific in areas that don't matter and completely lacking where you really need it. Or outdated. It's also nice to have some books, sign that the system is relatively popular, mature and at the end of it, it's cozier to share the couch with a book then with an online text. Also API documentation, at least it's easier to generate and keep updated.

Community? Very important, you'll inevitably have questions when you start working with the system. It would be nice to have a friendly place where you can ask/answer questions. But how do you judge a community? The only way is to get involved and spend time. No way to do this when you're judging 5 systems in a matter of days.

Verdict

It's virtually impossible to judge any piece of software until you start using it. It may have the right features, but they might be unfriendly or virtually unusable. It may have documentation, but not the one you need, etc, etc. So the only way is to spend time with the software and try to make it work for you.

And since I've been meaning to create my personal stoyanstefanov.com, I thought it would be a good idea to kill two birds with one stone - cast my vote and have a working site at the end, powered by my personal CMS favorite.

Content

So I sit down and listed the features I need, nothing overly complicated, and also decided on some rough structure. Here's my feature list:

  • Blog. In English and also in Bulgarian, nice test for i18n capabilities
  • Photos
  • Syndicated Twitter feed, probably the CMS will not have it out of the box, but syndicating content and consuming web services is so common these days that the software better be capable of doing it easily or let me write an extension easily
  • Slides, with the help of Slideshare's API, same as above
  • Books - a page for each book maybe, reviews, image, etc
  • Projects - list of stuff I'm involved in
  • Publications - articles I wrote for other sites and magazines
  • Conferences - list the conferences I've spoken to, encourage people to invite me, bio blurb, hi-res photo
  • About
  • Contact
  • Social - links to facebook profile, linked in, etc
  • Sites - other sites of mine
  • Syndicated content - again, syndicate friendfeed or a Yahoo pipe that contains pretty much all my online activity, such as other blogs and even tiny things like last.fm love/hate ratings
  • Subscribe - option to subscribe to RSS feeds or even monthly email
  • custom 404

All these features I would combine in 5 top-level menu items: blog, news, writing, speaking, info.

Checklist

So now that I know what I want to build, I can go ahead and (attempt to) do it with each CMS while looking out for some pre-defined checks.

Info

URL:
Maturity: (since when the CMS exists)
Frequency of new releases: (is the project active)

Tasks

The best way to get a feeling of the software is by performing some tasks, the same tasks for all CMS

  1. Download
  2. Install
  3. setup friendly urls
  4. setup sections and content
  5. customize presentation
  6. customize homepage
  7. create an extension
  8. customize 404

QA

Test both the front-end and the back-end admin sections.

  • works without js
  • works without css
  • validates html
  • validates css
  • jslint
  • yslow grade
  • smush.it

Misc

  • Is there a WYSIWYG, people like those (I avoid them)
  • available extensions
  • available themes
  • Documentation
  • API docs
  • Community
  • Books

Whew!

Lotsa stuff, wish me luck with aaall that :) And I would be interested to hear any comments on the subject. Thanks for reading!

Tell your friends about this post: Facebook, Twitter, Google+

13 Responses

  1. [...] Read the rest here: Best open-source PHP CMS 2008 [...]

  2. Don’t forget security!

    I was using Mambo for a long time due to it’s rich features, plugin architecture and a reasonably decent UI. Unfortunately, their architecture is fundamentally broken from a security standpoint and my site got hacked too many times to count. No amount of locking down on my part would help.
    Nowadays security is one of the top things on my eval list.

  3. [...] Original post by phpied.com [...]

  4. I look forward to reading what your thoughts are. I’m a long time Drupal user myself, but it always interests me to see how other CMS’s compare to Drupal – it seems that the comparisons tend to drive the Drupal community to new heights every time.

  5. Good luck – I don’t think that you’ll find what you’re looking for – for some CMSes it takes very long to handle them right but after a while it turns out that the long way through a learning-process is much better – otherwise you’ll find yourself with a CMS which comes with few out-of-the-box things but which isn’t flexible enougth to host your site when it starts growing … but I’m still interested which CMS you’ll choose

  6. Well – the taste of a pudding… and who is searching will find…
    But there are no ideal CMS and won’t ever be.
    Whichever you choose you’ll be unsatisfied.

  7. [...] has once again been tasked with helping Packt Publishing find the best open-source PHP CMS for [...]

  8. [...] has once again been tasked with helping Packt Publishing find the best open-source PHP CMS for [...]

  9. Drupal with CCK (along with imagefield, imagecache, and a few other modules) is by far the most flexible and just plain awesome CMS I’ve ever used. I strongly suggest you look at it. Don’t bother with Drupal 6 however, many modules only work with Drupal 5.

  10. It’s great to read what lengths you’ve said you went to in your review process. As someone from the SilverStripe project, also recognised in Packt Publishing’s awards (“Most Promising” category), it is comforting to know that our project came out on top with what appears to be high grade of technical review.

  11. Hey I wrote a post on that too!! If you have time check out my BLOG , I’ve been trying the blogging myself and I dunno I’m doing pretty goodI guess. Thanks for the Wickedideas.

  12. Hey there! Would you mind if I share your blog with my facebook group?There’s a lot of folks that I think would really enjoy your content. Please let me know. Cheers

  13. Darin Friedline

    I would love to hear your thoughts since you have owned these other devices. I am looking at the WDTV but have never owned any of these devices (just use my PS3 right now). Why is WDTV so much better?

Leave a Reply