Looking for open source CMS and portal software options

Over the past year or so we’ve seen a definite increase in the number of questions we get about open source content management and portal software at NetRelations. I’m not quite sure of the reason for this trend, but nevertheless it’s refreshing to see people beginning to “think different” in the otherwise very Microsoft-dominated country that Sweden is.

It may be a welcome change, but I find choosing a CMS incredibly difficult, and evaluating them is very time consuming and often frustrating. There are hundreds of options, one worse than the other. To date I have never come across a CMS that doesn’t have serious flaws. Even if a CMS looks good at a glance, once you start digging deeper you will always encounter problems with usability, accessibility, and front-end code.

Content Management Systems

A couple of times in the past I have asked my readers for CMS suggestions, but it’s been a while now. Last time we ended up using Plone, which was a real pain to work with. I don’t know if the situation has improved by now (it’s been three years), but just thinking about working with it gives me a stomach ache. So we want to look at other options, and I’d like to ask what you all think.

We’ve been looking around for a while and two of the very few systems that look like they could be worth spending more time with are ModX and Drupal. Their approaches to content handling are quite different, so they would most likely suit different kinds of clients.

The first thing I would like to get some input on is how good ModX and Drupal really are. I’m thinking both for developers who will need to customise the CMS to fit the clients’ needs and for the end users who will work with the admin interfaces to create content and structure sites. I’m looking for answers to the following questions:

  • How easy (or hard) are ModX and Drupal to develop for?
  • How easy (or hard) is using them to create content and administer websites?
  • Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes?
  • Are their admin interfaces reasonably accessible? If not, can they be made accessible?

That’s one bunch of questions. Next, the vague topic of “portals”.

Portal Software

Some large organisations are asking about open source portal software to use instead of commercial solutions like IBM WebSphere (WPS) or Microsoft Sharepoint (MOSS). I have some experience with both WPS and MOSS, and while making a public-facing website based on either system standards compliant and accessible is achievable with a bit of work, fixing the interface presented to a logged-in user seems more or less impossible. In other words, to be better than either of those two in the web standards, accessibility and usability departments should be really easy.

It seems that most open source portal platforms are Java based. Liferay, JBoss Portal, and Apache Jetspeed are some. They all seem like incredibly complicated pieces of software that are beyond my capability to understand. That has got me thinking… would it be possible to use Plone or Drupal as a portal? Yes, I know I complained about Plone being hard to develop for earlier, but compared to others it is pretty good at web standards and accessibility.

Does anyone reading this have experience from open source portal software? The questions I’m looking for answers to are the same as for the content management systems.

Their standards aren’t our standards

As a sidenote it’s pretty fascinating to note that when CMS and portal software vendors boast about “Standards compliance”, “Open standards”, and “Interoperability” they do not mean what you might think they mean.

To them, those terms have little to do with the front-end, so having a “Standards compliant, interoperable” portal solution does not mean that it outputs valid HTML and CSS and will work in any browser. Instead, it means it will run on any server that means the requirements. Huge difference.

To summarise this little call for input: any suggestions, hints, and recommendations on open source content management and portal software are welcome.

Posted on February 7, 2008 in Content Management

Comments

  1. February 7, 2008 by Henrik

    I use Drupal for all the sites I’m building and it is easy to extend or customize. Drupal has hooks which pretty much let you act on almost any aspect of the system: adding/changing/deleting content, users etc.

    Drupal has a very good site with lots of information for developers, users of Drupal sites etc. Drupal is the easiest system I’ve come across when it comes to customizing it.

    http://api.drupal.org/api/ is a good resource for the functions available to the developer from the core.

    The only downside is that Drupal needs lots of resources. Lots of Memory and a database than can handle lots of queries.

    But hardware is getting cheaper and cheaper so it’s not a big problem.

    In my experience Drupal is the only option available…

  2. The only cms system I know about in this bunch is drupal. I’ve made a couple of modules for it and it’s very easy to work with. But their administration system is horrible. It took me a couple of weeks to get used to their menu choices.

    I think that drupal creates standard compliant code. That’s actually all I can say, I only worked with it for a couple of weeks.

    I would actually recommend something else like Expression Engine.

  3. I use WordPress as a basic CMS to run my website. Not the foremost example, but it works for me…

    I have read some good things about Drupal. I’ve been meaning for some time to fiddle with it a bit, it’s somewhere on my to-do list.

    I use a couple of CMSs at work, for different clients. One is decent, the other is IMO horrid. I imagine all the options run the spectrum of quality, just like any other software.

  4. February 7, 2008 by Christer Josefsson

    If it’s not a requirement that the admin interface is standards compliant, then I would recommend using Umbraco. With Umbraco you have full control over the HTML, with the exception of what the built in end user/editor (TinyMCE) produces. It’s definitely worth looking at.

  5. New kid on the block - SilverStripe. I haven’t tested it out much yet, but it looks quite powerful.

  6. Have a look at our hosted CMS: http://www.ugal.com. We do our best to be compliant with the standards.

  7. My team has used the Comatose plugin (http://code.google.com/p/comatose-plugin/) for Rails on a couple of projects, and have been very happy with the results.

    It’s deceptively simple, and that’s just what we needed for those projects.

    Comatose does give you absolute control over the output, as you build everything yourself, and with Rails I can do that a lot faster than I can bend something like Typo3 into shape.

    One of the major issues I see with CMS’s is that once you’ve got it bent to fit the clients design, a new release comes out, and you have to repeat a lot of the work you’ve put into the customisations in the first place. Now this kind of work hardly motivates anyone.

  8. I fully recommend Drupal. Even though I came from a C# background myself, and miss some of its syntactic sugar, I have no regrets of having returned to php

    Development: Drupal uses a straightforward system of hooks that let you inject code into the execution path. You can also just hijack the process and turn it around to do whatever you want.

    There is a set of API’s that’s ever growing and being refined. Example: the Forms API is used for all the form building and lets you add/remove fields/widgets from a form, customize their appearance, add custom validation code, etc.

    There are strict coding guidelines, and a security team constantly scans Drupal core and contributed modules for vulnerabilities (sql injection, xss, malformed headers, …)

    Design: The entire visual layer (called ‘theme’) is decoupled from the business logic. Themes can be set based on URL’s user roles, time of day, whatever.

    The standard theme engine is a pure php-based one (so no overhead for template tag parsing) but others like smarty are supported too.

    Drupal dictates that every bit of html output that is generated by a module, must be returned by a so-called themeable function that can be overridden in the theme layer.

    If your module’s name is foo, you have a function called themelistbars() which, let’s say, outputs a list of bars as a table. Let’s say you make theme called ‘berea’: you can define a function in your theming layer called berealistbars() which gets an array of bars and outputs it as an ordered list.

    This means you have full control over the way the output is presented. Note: not all contributed modules actually go through the trouble of creating themeable functions, but most do. And you can always just extend any contrib module with a set of themeable functions if you really need to, thus making the world a better place.

    Admin interface: actually there’s no real separation between front-end and admin interface in Drupal. There’s a very fine grained system of role based access which you use to define permissions. However, there is a notion of ‘admin interface’: everything that starts with /admin/. Those parts can be given a separate theme if you so desire.

    Conclusion: All in all, there is a certain learning curve, but not nearly as steep as, say, typo3. The only main advantage is the lack of usability considerations and attention to user experience design in the current ‘default’ (admin) themes, though this is a major focus for the next release.

    Any questions, don’t hesitate to contact me or consult your local Drupal user group.

  9. I think this upcoming year is going to see a big increase in the use of django. It may be paying it a bit of a diservice to call it simply a CMS but as that it is very powerful indeed.

  10. February 7, 2008 by Jonas Myrenås

    Joomla just came out with a new version, 1.5. I made a site some years ago that went quite smooth. Lots of apps and add-ons to choose from.

    I have no other open source CMS to compare with, though, but I think it’s worth considering.

  11. February 7, 2008 by Roger Johansson (Author comment)

    Grant: We’ve looked at WordPress for very very simple sites, but nearly all of the sites we build are way too complex for WordPress.

    Christer: If at all possible we really want to find something with a standards compliant and accessible admin interface. And yeah, Umbraco is nice and all but I really want to get away from .Net. Platform lock-in sucks big time. Besides, I’m on a Mac, so…

    Jonas: We’ve looked at Joomla and it may be an option. Seriously confusing UI though, at first glance at least.

  12. I recommend SiteVision as CMS/portal. It isn’t opensource but it contains a lot of opensource parts. It isn’t all perfect but has come a long way in it’s standards crusade. The admin area is really nice and product has some really nifty features.

    http://www.senselogic.se/4.2f85b5f110c3d24f346800086.html

  13. What about Joomla ?

  14. February 7, 2008 by Erik Töyrä

    About a year ago I investigated a couple of available CMS. In the end it stood between Drupal, Joomla! and a rather unknown CMS called Midgard CMS. After having tested the different systems a lot I have finally decided to use Drupal because it has a clean and powerful API and gives you the possibility to override markup output in a very powerful and easy way. The quality of the markup is quite good to start with but there are some modules (like CKK and Views) that tend to generate some really bloated markup. But you can always change that.

    Joomla! looks promising at a first glance but it can really drive you insane with it’s very rude “Get results the Joomla! way or else hit the highway…” kind of approach to everything. Also, it’s very hard to modify the markup since you often has to hack the core files instead of overriding how the output is generated. This will give you problems when updating the CMS in the future.

    OK… now to your questions. :)

    * How easy (or hard) are ModX and Drupal to develop for?
    

    - Drupal has a very good API which allows you to write your own modules and modify existing ones quite easy. I recommend you to buy the book Pro Drupal Development to get the best possible introduction to the API. Overall the Drupal documentation is very good.

    * How easy (or hard) is using them to create content and administer websites?
    

    - So far I have done a website and a intranet using Drupal. I think it works really well for both purposes. You should install the CKK module which allows you to create your own content types with custom form fields that facilitates the edtiting of content.

    * Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes?
    

    - So far Drupal seems to allow developers to customize and have full control of at least HTMLM and CSS. At least I haven’t found anything that is not customizeable. I have not tried to modify the JavaScript yet - but there is not much JavaScript in drupal either. They use the jQuery framework.

    * Are their admin interfaces reasonably accessible? If not, can they be made accessible?
    

    - Drupals admin interface can be quite hard to wrap your head around at a first glance if you login as an administrator with rights to modify everything. But there is a very easy way to set rules for what type of administrator rights each user group should have. So you can easily give the authors a very clean and stripped version of the admin interface with only the parts they need to create content. You can also modify the admin interface HTML and CSS in the same way as you do with the front-end.

    I have only tested Drupal 5.1 to 5.5 so I have not tested Drupal 6.0 which currently is in RC3. It is said that they have worked very hard on this release to improve on accesibility and web standards. They also have a team of developers consentrating on these questions. http://groups.drupal.org/accessibility

    Some articles to read: http://juicystudio.com/article/choosing-an-accessible-cms.php

    Other things you sould consider when using a CMS is if there is an active community.

    I hope you will have some use for this Roger. I tried to live up to the “Be willing to give back” post you published yesterday. :D

  15. February 7, 2008 by simon

    Forget Joomla all the sites look the same and its really bloated, I use modx, it’s really the best open source cms system I have used (I have tried almost all of them), and can create clean code, or as clean as you wish to make it.

    Expression engine looks really good, but you have to pay for the commercial version.

    I see wordpress as more of a blogging tool but it is very good, and you can adapt it.

    I’m going to check silverstrip looks interesting

  16. Just looked at Drupal now and used the demo. It crashes in FF2 on the PC and Mac. Thats not very standards compliant is it?

    Using Wordpress is good for small projects like Roger says, but for larger ones there needs to be something better.

  17. I’m a designer, and I was disappointed with the different CMS’s available.

    But recently, I decided to start learning Django, and I’ve found that it is extremely powerful. And with it’s Admin interface it makes a wonderful CMS. You are in full control of the HTML & CSS, the admin interface allows you to user all types of data, not just plain articles. Just thought this could be something you should consider.

    If you prefer Rails, there are similar admin interfaces that can be used with Rails as well.

  18. I think I also remember that you had learnt Python for a previous project, so picking up Django ought to be a lot easier for you. (It’s taking me time, as I have to learn Python too)

  19. I’m not an expert on CMSes, but I’m really fond of Symphony. Probably not suitable for complicated sites though.

  20. I’m a standards-centric designer, and have also been very disappointed with the range of CMSs available today. Every one seems to be a compromise, normally between accessibility, ease of use (very important when handing over to non technical clients) and features.

    However, I’ve recently come across TYPOlight and have been blown away. It’s LGPL, has tons of well organised features, an extremely clean admin interface, a good developer community, and a well documented API.

    I know I’ll be using it.

  21. February 7, 2008 by BulletProofPoet

    I’ve used Exponent (http://www.exponentcms.org) on a couple of projects, and really like it. It’s PHP-based, templates are easy to create (so can be as standards-compliant as you like) and all module output is created using smarty templates (http://www.smarty.net/), so these can be easily customised as required.

    I re-wrote a couple of the navigation templates a while ago to use floated divs for horizontal menus instead of tables.

    It may be worth a look, Roger.

  22. I work myself in a OS Web oriented company. We are working a lot with EZPublish (for PHP CMS) or Jahia (for J2EE). If your projects are not that big Drupal will be better. EZPublish will be the solution for big project. About the Portal the only solutions I know are in Java : http://portals.apache.org/pluto/ http://www.uportal.org/ And the one you talk about. The only PHP Solutions are PHPNuke like (PHP Portal) but they are not very nice.

  23. I’m using ModX now for all my projects after checking out a few of the other contenders on http://www.opensourcecms.com

    To answer your questions:

    How easy/hard is ModX to develop for:

    a sharp immediate learning curve that flattened out very quickly. Once you get your head around the architecture and terminology it’s remarkably straightforward – no pain, no gain!

    How easy is it for clients to create content and administer their sites: A couple of hours demo and training usually does the trick even for fairly technophobic clients I find. I’ve recently been making good use of the ManagerManager plugin which allows you as developer to hide unused input fields and code chunks by user group so you don’t need to keep using the “pay no attention to that man behind the curtain!” spiel in training sessions anymore – your clients see only what you want them to.

    Any problems creating standards compliant accessible sites: None whatsoever – total control over templates and sub –templates (chunks) mean that ModX spits out the code you want it to, where you want it. There is total control over HTML, CSS and Javascript – no black boxes, everything and anything can be changed. There’s also a very supportive growing user community providing support and also recently added commercial support service.

    Accessible admin interface? I have to admit I looked to hard at this angle but I believe there are big advancements coming in the next release (0.9.7) that will address many of the backend interface issues that users have commented on in the forums.

    Anyway, that’s my tuppence worth – ModX, like garlic bread, is the future…

  24. I have looked at many systems, but I have used only Expression Engine (EE) and Symphony to actually build websites. EE is feature-rich, it is clearly documented, and the team (programmers and support) does a wholehearted job. But using such a huge admin area, having to dive deeper and deeper just to change a small bit of your site logic is not always fun… EE is not open source (but it is worth the money).

    Symphony 2 is more fun. This system does not use its own special template language, nor does it bother you with a big admin area. It is built around XSLT as templating language, it is small, fast and extremely flexible (including extensibility via APIs). At the moment version 2, which will be open source, is in beta stage. (In the main forum you will find a link to the beta forum.) Symphony 2 looks very very promising.

    So here are my answers for Symphony (version 2):

    • It is easy to develop sites if you have learned XSLT
    • creating content in the backend is very easy, because the pages will be customized to the content you actually need for a content section (fields may be text input, checkboxes, select boces etc.)
    • standards compliance is easy to achieve; (plus: PHP’s XSLT parser will “assist” you in throwing errors if you do not care…)
    • the backend is using AJAX, and so it is not accessible. But it will be rather easy to build front end editing pages/tools for Symphony 2
  25. February 7, 2008 by Andreas

    I’m using Radiant (http://www.radiantcms.org) in two projects att the moment. I really like it becaused it is focused on content and not on all the fluff around. The backend isn’t that good for bigger teams, but I think it would be pretty easy to fix that.

  26. February 7, 2008 by banal

    Last year we did a (shallow) evaluation of Drupal, Typo3 and MODx to find the CMS we’d like to use for our Website.

    Typo3 was out of competition pretty soon, simply because it was too complicated to administrate and we didn’t want to learn “typoscript” first.

    Drupal and MODx were in the “final” round but MODx just seemed better to get started (for example you can just start creating documents in the Backend whereas Drupal needs way more steps for a good setup).

    Apart from the Multi-Language issue that isn’t covered so well with MODx, everything went fine and we were able to bring the site online on time. And believe me, the schedule was tight.

    Here are some pros for MODx:

    • Very customizable/extendable
    • You can get stunning results if you’re (X)HTML/CSS and PHP savvy (that might be a con for others, since it might cause you trouble if you’re not into web programming that much)
    • It has a great supporting community over at http://modxcms.com/forums/
    • It’s easy to create SEO sites with valid markup
    • Backend is really easy to understand even to novice users. We had several People who didn’t have any previous Web-Publishing experience working with the MODx Manager. Thanks to the fine grained access controls we were able to hire external Translators that translated parts of the Site for us directly in the Manager.

    Cons:

    • Might not be so easy if you have no idea about HTML/CSS. Requires PHP programming pretty soon. Although there are lots of Community contributions/solutins for a lot of common problems/needs.
    • Not very well documented. Docs for Extensions from the community are sometimes hard to find or even non-existent. The forum makes up for this though.
    • No native multi-language support

    That’s just my personal experience. I think MODx will make a big step forward when 0.9.7 is being released. : Look here for more information on that matter

  27. I second Typolight. It’s a joy to work with.

    Very, very clean admin interface and (don’t forget your customers!) its german translation is very good. This is no surprise, the main developer lives in Munich, Germany…

  28. This self-taught grandmother uses MODx. It was the easiest of all of them that I tried from *nukes to Drupal. Since then I’ve freelanced and built dozens of sites with all kinds of custom template designs and functionality from AJAX to XML with no problems. Even my clients are all happy with the management interfaces I can easily customize for them.

  29. Great to find out MODx (‘Most Promising Open Source CMS’ award by Packt Publishing) came out as a preliminary winner in your CMS researches too !

    I have been using it successfully for almost 2 years to run our institution’s website. Before deciding on it I tested Drupal briefly, and Plone, which made me feel completely stupid and uncapable. I also know my way around with WordPress which I use for a personal blog.

    With MODx I implemented a valid/accessible 3-cols css layout, microformats, and we’re also using various jQuery modules inside it.

    The site is bilingual, MODx provides a module to manage foreign terms automatically, marking them up with the correct <span lang=…; great feature, it would be impossible to have editors understand the issue and remember about it!

    • How easy (or hard) are ModX and Drupal to develop for?

    Your plain HTML + CSS go straight into the MODx templates. Anything else you might need is managable with standard PHP/MySQL. Many ready made PHP snippets are available on the MOdx website; the Dev Forum is a great resource to learn using and adapting them to your needs.

    • How easy (or hard) is using them to create content and administer websites?

    A medium-skilled CSS designer and PHP developer will feel at home from the start.

    • Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes?

    As described above, this is ‘the fullest control’ I could find amongst the CMS I tested, this issue was very crucial to me in choosing MODx over other CMS packages.

    • Are their admin interfaces reasonably accessible? If not, can they be made accessible?

    Ouch, the current admin Interface is Frames&Tables based; but I believe the 1.0 release will take care of this also. It should be available in a few months.

  30. I use MODx, and have built about 10 websites using this excellent CMS.

    Each time I build a new site I always find more amazing features.

    Its as flexible as the developer who uses it and there are a wealth of snippets and modules already written that can be deployed in minutes.

    10 out of 10 MODx!

  31. @Roger I’ve been using Drupal for the last 3 years, so can’t comment about anything else. There’s been some other excellent comments about Drupal so I’ll not rehash to much.

    Black boxes: historically a bit of a problem for Drupal, but there’s been major effort to remove them in Drupal 6 (currently at release candidate stage).

    Accessibility (and Usability): also an issue, has received a lot of attention in Drupal 6 and will also be a focus for Drupal 7. See http://buytaert.net/drupal-usability-testing

    One thing I would say to anyone choosing an open source CMS is that it’s not just about picking up free software that you can modify - it’s also about the community and what you can give back. Ultimately you’ll find it a lot more rewarding if you get involved in development of the software itself, not just treating it as a freebie.

    A few more people contributing advice and code to improve accessibility of Drupal certainly wouldn’t go amiss :)

    One final point to make that is that Drupal is undergoing exponential growth at the moment, lots of people joining the community, lots of development going on - the end result is that there are pretty big changes in every Drupal release, new API’s, API changes, interface changes and so on. It’s a bit of a roller-coaster ride, but ultimately for the better.

    Take a look at Dries Buytaert’s list of sites using Drupal to get an idea of what is possible: http://buytaert.net/tag/drupal-sites

    @Jonny Haynes what Drupal demo crashes FF? There is no official Drupal demo site AFAIK.

  32. I’d go with ExpressionEngine. It isn’t Open Sauce but their license does allow you to open it up and modify it to your needs.

    Obviously there is no CMS to rule them all but I guess it depends on your needs.

    Only then will you know what is the ‘best’ CMS (for the job).

  33. I’m also using ModX for small to medium sites and i’m very happy with it.

    PROS:

    • Fast learning curve
    • Easy to install
    • Full code control in development (and I mean “FULL”)
    • Very helpful and polite support forum (Hi Susan ;-))

    CONS:

    • It uses WYSIWYG-Editor (TinyMCE) in the “admin area” to change site contents. So you have no more code-control when a clients edits the site :-(

    I’m also waiting for the 0.9.7 release (or even better the 1.0).

  34. I only see one reference to eZ Publish (www.ez.no) which is a great Open Source CMS with as much flexibility as you will need in most projects.

    Disclaimer: I’m just a normal web developer with no connection to eZ Publish other than as a user.

    Even though you didn’t ask for it, I’ll address your questions for eZ Publish CMS:

    • How easy (or hard) is eZ Publish to develop for?

    The learning curve is a bit steep, but development is painless once you know the system.

    • How easy (or hard) is using them to create content and administer websites?

    Pretty easy. Content is stored in a tree structure, yielding logical URLs aswell. Easy to move around subtrees and single pieces of content. One installation can be used for several websites (or intranet, extranet) if you wish.

    • Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes?

    Every single piece of output from the system i template based. The standard installation uses XHTML1 and conforms OK, but the semantics aren’t that great. Fortunately eZ Publish has a great override-system that let’s you override the templates you don’t like. If you want you can create ALL the templates from scratch, from simple string output to a full page layout.

    CSS, Javascript, Images and other resources are stored directly on the file system, so no problems there either.

    • Are their admin interfaces reasonably accessible? If not, can they be made accessible?

    The admin interface is XHTML 1.0, and even though I didn’t make a formal analysis, I think it’s rather accessible. It is however a not the most intuitive interface, but it still beats most competition in my mind. In addition, the admin is just an interface to the CMS, created just like the site you will create, and if you like you can craft a simpler admin and use that instead. Once you know how to develop a website with eZ Publish, you may use the same knowledge to craft admins or add admin functionality into the frontend for logged in users.

    Hope you give it a spin, I have used it several times with great success. My own site is built with it as well, you can use it as a reference if you will: www.cjohansen.no

  35. Forgot one thing… eZ Publish stores content in “eZXML” which is transformed to HTML by the means of templates, either standard ones, or your own custom ones. The users produce content with a WYSIWYG editor (or without), that produces eZXML, not HTML, and requires content to be well formed.

    This is a great feature that none of the other alternatives have.

  36. Not sure if it’s relevant, but Django is co-developed by Chris Willison, and I think he do sympathize with interface developers.

  37. Another vote here for Symphony, I’ve used it on several projects.

    It’s flexible, light and you have complete control over the markup. Plus the templating language is XSLT (A web standard).

    They’re in the process of rolling out version 2, which is well worth a look.

  38. I only have experience with Drupal and Joomla (and a bit of Mambo, which is what Joomla forked from).

    In my experience, Joomla is very hard to customize and to make it output sane HTML/CSS. Out of the box many components just output table layout, inline CSS and more such nonsense. Lots of code is a horrible mess where business logic is mixed with output and pretty hard to extend. The admin interface looks a bit confusing at first, but you get used to it quickly. I hear they’ve been trying to make the code cleaner in the new 1.5 version, but I wouldn’t bet on it being much better.

    Joomla has a very big and active community, resulting in a huge number of add on modules. However, the majority of the community seems to be in the hobbyist/amateur market. This shows in the huge number of security holes that Joomla and its contributions have historically had. If you decide to use it, lock down your server’s PHP settings tightly.

    As far as Drupal is concerned, I can only agree on the earlier comments about its admin interface being confusing. It’s a bit of a CMS by geeks, for geeks, so to speak. The interface is not based on tasks but on functionality and it takes a while before you understand its node-based structure. Once you understand how it works “under the hood”, its menu starts making sense.

    Drupal is indeed highly customizable and the default HTML/CSS it outputs is quite accessible and standards-compliant in most cases. It’s very rough around the edges, though, and you must be willing to customize quite a bit if you want to use it for big projects. It’s more of a CMS toolkit for hackers than a complete CMS product you can just take and install as an end-user. Of course this means that the community (which is active and growing at a very fast pace) is quite knowledgeable technically. There are loads of add-on modules for Drupal, too. The documentation is very good.

    Hope this info is useful for you.

  39. February 7, 2008 by Joram Oudenaarde

    One thing I personally have been looking for for a while now, is a CMS that provides a nice amount of control for users who aren’t developers, but dó have some experience with xhtml/css.

    A lot of CMS’s are pointed slighty more towards people with some more experience, but to date I haven’t found a CMS that gives the user/admin the kind of easy-to-adjust control like Tumblr’s adminpanel seems to do. Nearly all of them require you to get your hands “dirty” with PHP, although you don’t actually need to knów PHP itself.

    A CMS that gives the admin the opportunity to change the looks by using API for example: near impossible to find, if it exists at all.

    A tumblr-like CMS? Chyrp is one of them, but the backbone still makes it rather hard for simple mortals :)

    (I would like to mention I can make W3C-compliant xhtml/css websites pretty well, but when it comes to changing a CMS’s theme to my liking, I run into a wall)

  40. Did I mention that Drupal’s interface is fully localized (L10n) and that a set of advanced modules allows content translation (i18n) with translation/publishing workflow?

    Drupal 6 core contains most of the i18n module set that you still need to install separately in D5.

  41. I might be a little biased since I helped create it, but do have a look at SilverStripe because all of your concerns are felt by us. We’re constantly seeing the options out there lack in ways like;

    a) overly complicated geeky admin interfaces b) non-elegant code to hack (compare with the elegance of Django & Rails conventions) c) simpler systems (e.g moveabletype/wordpress-esque) often lack versioning, security, multi-language, themes, widgets, etc d) Inflexibility of template freedom

    And so we designed the SilverStripe platform with usability and technical elegance in mind. You get an admin interface for content authors rather than programmers, and the developers get to hand-craft their HTML and (object oriented, elegant) PHP code.

    How easy (or hard) are SilverStripe, ModX and Drupal to develop for? - All let you get something off the ground quickly, although you might find ModX lacking in themes and widgets, and that you will spend lots of time customising Drupal to get the admin interface to work the way you wish.

    How easy (or hard) is using them to create content and administer websites? - SilverStripe focuses on reducing the steps it takes to perfrom tasks like adding pages, resizing images, etc; whereas ModX and Drupal expend their effort elsewhere.

    Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes? - All permit this, its a matter of ease. We were building web (XHTML, CSS) standards compliant websites before we designed SilverStripe, and so these just drop out of SilverStripe. In terms of design diversity see our themes and showcase , then see that we’ve built XML sites that feed flash, e.g. TheLowDown depression site

    Are their admin interfaces reasonably accessible? If not, can they be made accessible? - We strongly focus on usability (rather than accessibility per se, meaning “reasonably accessible” is certainly a comfortable statement to make).

    And finally, there’s a swedish translation of the admin interface (along with dozens of others)! We’d like to thank Google very much for inviting us into their Summer of Code program that let that happen.

    Read back over the SilverStripe Blog to get a feel for our vision, progress, etc :)

  42. I think the whole CMS paradigm is very much passé, while web frameworks such as Ruby On Rails, Django and CakePHP are a better option for many projects. I don’t know which frameworks are hot in the Java and .Net world.

    Web frameworks are ultimately easier to work with when your user requirements start to grow beyond the straightjacket of content management systems (something that can easily happen even in the very beginning of the project). Traditional content management systems also come equipped with TONS of functionality that is plain unnecessary for most clients.

    Out of the existing options, Drupal is the one I would probably choose if wanted to pick a CMS for a project. It’s the one I’ve heard most good things about and what sensible people seem to be using.

    I have consulted on CMS systems for living and was part of a team that built a commercially available CMS that still sells 7 years after it was first written.

  43. February 7, 2008 by Maaike

    +1 for MODx. I’ve built 6 or 7 sites with MODx and I really like its templating system. Basically you just write your own html and then replace the content with MODx tags.

    PROS:

    • templating is a piece of cake, outputting clean code is not a problem

    • there are plugins available that can do all sorts of things, but it’s also relatively easy to create new ones (if you’re a php programmer)

    • large and friendly user base

    • my clients find the back-end easy to work with

    CONS:

    • no out-of-the box multilingual capabilities

    • back-end not fully accessible

    • the documentation is incomplete and scattered all over the place (site, wiki, forums…), there certainly is a learning curve. I found it worth the effort, though :-)

  44. Around 18 months ago we evaluated many CMSs, and eventually chose ModX as our standard CMS.

    It gives us absolute control over the output — whether it’s outputting XHTML, or various XML formats (e.g. to integrate with Flash, etc.).

    The admin is by far the easiest and most straightforward of any CMS we evaluated, as previously commented we can have clients trained and using it within an hour.

    I wrote the ManagerManager plugin Lee mentioned, which helps to make admin-ing much easier for non-technical users, as we can hide everything unneccssary.

    However I do not think it is an accessible manager in any way — using frames and javascript (it won’t work with JS turned off) - it depends how much you feel you can compromise.

  45. February 7, 2008 by Shane

    MODx all the way here. I did the CMS rounds and was very disappointed in what was available, no solution covered all of my needs …until I found MODx that is. I won’t be specific about the competition since they each have something of value, however none offered an extendable, flexible and complete solution as MODx. The only problem is that once you start using MODx there is no way to stop.

    What sets it aside from the rest is that it is not simply a CMS and is not designed to be just a CMS. It is often referred to as a CMF (content management framework). Another thing that sets it apart is that MODx will not dictate how you do things (as most other CMS’s will), in MODx there are many solutions ranging from simply using an existing user contributed snippet (modx’s answer to the widget) to coding a complete custom solution (which any php enthusiast can do). MODx’s flexibility was a fundamental factor in my decision to embrace this solution and I must say that there is no longer any competition as far as I am concerned…and it will just get better as the project matures.

  46. A big vote for Symphony. I can’t say “Content Management” if I’m unable to create my own types of content. Symphony allows you to do this. With XSLT templating, you can have the front code you want. The admin is also very simple and well made.

  47. After hacking several Wordpress installs into submission and fighting with Mambo, Drupal and Open-Realty to just build a site with a straigforward HTML/CSS exterior, I found MODx. I have become a bit of a MODx nut.

    Here is the beauty of it:

    1. Build static or Copy your (X)HTML/CSS (or tag soup—not that you would Roger) templates into the Template section of MODx.
    2. Assign specific templates to specific pages or sections of your site.
    3. Place your CSS, JS, other scripts wherever you want. Just reference them as you normally would.
    4. If you want to create a custom function there are API hooks for many controls for MODx and its DB as well you can write your own PHP scripts that can be used to extend MODx.
    5. Built in caching.
    6. Choice of backend RTeditors TinyMCE (preloaded), FCKEditor or None. Integrating others is at your skill level.

    One of the issues that will likely go away in 0.9.7 is the non-Accessible/invalid (W3C) manager interface. In addition O.9.7 allows you completely customize or redesign whatever you want inlcuding the JS actions of the interface.

    What really turned me from a MODx user to a MODx Evangelist is that I can work the way I want. If I want to edit a live site I can. I don’t build any static sites any more for anyone. Even if the client wants me to manage the site I will build it on MODx and edit/update content and features as needed.

    Wordpress is easy to set up but building templates requires calling functions in the template and messy multipart loops. MODx’s parser handles all that so despite what many people see as a long learning curve to build a site it is actually that they are faced with much freedom to do what they want.

    Often people come to the MODx forums asking things like, “Where to I put my CSS files? How to I make my template valid” the response is always, “Wherever you’d like. However you’d like.”

    Just insert the appropriate tags or references to the included elements and away you go.

    What I really liked is that building addon elements I could write it pretty much however I want. If it is a piece of procedural code that echos an element or a whole OOP mini-app to work with MODx I don’t have horribly rigid addon syntax to learn. I just write php.

    Where MODx lacks currently is documentation for WYSYWYG designers who want to setup a blog in 5 seconds (although custom builds are coming in future releases of MODX). And some of the organization of the documentation being spread between the Wiki (0.9.7s prerelease docs are shaping up nicely and the API will docs will be exhaustive) , Docs and the forums and Addon author sites can be frustrating but you’ll not find a friendlier bunch than the MODx community.

  48. February 7, 2008 by Louis Simoneau

    Hi. I’m going to wholeheartedly recommend Drupal. In terms of ease of development, it’s leaps and bounds above anything else I’ve worked with. If you’re a developer, the Drupal API is godly. If you’re concerned with standards, ditto. Every (every) function in drupal that spits out HTML can be overridden in your theme, so you’re never stuck with ugly or broken HTML that some developer decided on.

    In terms of ease of use for content management, it’s a little less user friendly than other systems (like WordPress, for example), but I think that simply comes with the territory of being so complete. No problems with accessibility that I know of, and if there are, like I said, all the output is customizable (even for the admin interface).

    Sorry to hear about your experience with Plone. I tried that once too, but as I recall it took me two days to figure out installation and a basic theming function, and then I gave up.

  49. Drupal has one huge problem. Documentation. Oh, and clunky code. Customizing anything feels like you hacking it.

    I can suggest ExpressionEngine, or Codeigniter (framework). Complete control. Code is organized. Documentation is superb.

    When people tell you Drupal “can do anything”, you have to remember you can make any code do anything. Problem is it’s just one big hack of a mess.

  50. February 7, 2008 by Brian

    I would look at ExpressionEngine. EE is more of a framework than a blogging engine. If you think of each ‘blog’ as a separate database table, then the possibilities are limitless. Documentation and community support is top notch.

    www.expressionengine.com

  51. February 7, 2008 by Tim Shortt

    A quick point of clarification is in order:

    Expression Engine is open source software. It just isn’t free. There’s a difference.

    http://en.wikipedia.org/wiki/Free_software

  52. You might want to get in touch with Roxen. Not for free but versatile and just about anything is possible.

    Might come in handy for you: they’re in Sweden too ;) (Linköping, www.roxen.se) They just got Metro started, first in Sweden, now in Holland too. Besides them, many other respectable companies use Roxen CMS too.

    Depending on the size of the website (and/or back-end data connections) you might consider giving them a call. Tell them I said so ;) (and no, there’s nothing in it for me!)

  53. As a core 097 developer on MODx, I’d like to make a few comments. I’ll try and be objective as possible.

    I’ve worked with both MODx and Drupal (as well as other CMSs). I’ve found MODx to be far more flexible, and Drupal to have more pre-built options out-of-the-box. Drupal fits YAPS profiles, MODx fits flexibility and do-it-your-own-way Framework profiles. Drupal has a lot of pre-built things for you that will let you set up a robust site quickly. That’s it’s strength. However, it’s weakness is that if you don’t fit the Drupal mold, or want to do advanced customizations, it takes a lot of time to figure out how.

    You’ll find a lot of people telling you that “you can override the functions in Drupal that output HTML.” Here’s the thing: MODx doesn’t do that. You spit out the HTML - however you want it. MODx works with things on an abstract level - templates give you the vehicle (not the parts!) to put XHTML and CSS on your site. You can make it nearly as close to a static site as you want in terms of the header/footer (or a site that doesn’t even form with header/footer, etc, if you like!). There’s no limitations on design schemes in MODx.

    This brings me to a further point. There are no Themes specifically built for MODx. People who say they build themes for MODx really mean that they build CSS/XHTML themes. Because, if you look, that’s how MODx works with templating. Your XHTML/CSS, templated across the site. Period. No constraints. No definitions. Your way.

    So, to your questions:

    Q. How easy (or hard) are ModX and Drupal to develop for?

    A. If you can code PHP or XHTML/CSS, you can do it in MODx. For PHP scripts (called Snippets in MODx), you can use the MODx API, or not use it. It’s your choice. I’ve run MODx with it’s own API, and I’ve also run it including my own API (yes, this means you can pretty much straight incorporate PHP scripts into it).

    Q. How easy (or hard) is using them to create content and administer websites?

    A. Drupal has a confusing manager interface because there’s lots of framework ideology to learn, design concepts, and the navigational structure (imho) is cluttered. MODx has it’s quirks, like any other, but I’ve found it much more intuitive.

    Let me further this point: Where I work - the University of Texas at Austin, College of Education - we’re currently deploying MODx for our current website. This means a few things: one, we needed a CMS that education faculty and staff could learn and understand. This means it had to be simple - very simple. We also needed something that to them, felt intuitive and made sense. And we needed something that let them design their pages however they want.

    And finally, I needed security - I didn’t want some administrative assistant somewhere to mess with another department’s pages.

    Drupal provided the security, as well as the power to do a lot of the out-of-the-box features - but was a pain in the arse to try and customize, and scared the crap out of some people in its “too deep” manager interface. MODx was simple, easy-to-learn (it took 1 hour-and-a-half long training session), had a WYSIWYG editor built-in (as well as a front-end editor), and could do all the security things we needed. We’re using MODx to deploy the 2000+ page / 30+ content editors (people) website now.

    Q. Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes?

    A. Drupal does, but you have to override a lot of things, and work at it for a while. You have to work within Drupal’s “mode of operation” (meaning learning all of its terms and sections and what “nodes/blocks/menus/modules/themes” mean and how they work.

    MODx offers full control - immediately. It never purports to do otherwise. Templates give you straight XHTML/CSS access to design the layout however you want. Template Variables allow you to do the same thing in dynamic content.

    Q. Are their admin interfaces reasonably accessible? If not, can they be made accessible?

    A. From what I’ve seen of Drupal 6, it looks pretty accessible. I’m not sure about Drupal 5. MODx 0.9.7 uses Ext2, and will be XHTML compat. It allows full control over manager templating, so we’re confident a full 508/Jaws-compat manager (if the Ext-powered default one doesn’t for some reason; I haven’t tested it on Jaws and like clients yet) can easily be created. MODx 0.9.6 is not accessible, from what I know, but again, has customizable manager templates that you can easily modify.

    Summary

    Drupal is a YAPS - a great out-of-the-box portal system. It has a lot of pre-built options, but like any big pre-built-provider, that means you have to work with Drupal’s system to do what you want. It takes some time.

    MODx allows you to immediately have full control of the XHTML/CSS that goes to what your visitors see on your website. It doesn’t insert anything in it. You do. So the “does MODx create HTML/CSS-standard websites” question doesn’t apply here; MODx does what you do with it. If you don’t create standardized websites, it wont. If you do, it does.

    Hope this helps.

  54. I vote for secret option number three: Expression Engine.

    Beautiful, elegant, clean, efficient and a designers dream. Build your site exactly the way you want, standards compliant and all, then just wrap the EE code that you want around your design. Doesn’t get much simpler.

    I used to use Drupal and Joomla, but about an hour with EE and I never looked back.

    It IS Open Source, but it’s not free. At the same time if you can’t afford to plunk down a paltry $250 for the corporate version for a business site you are building, then perhaps it’s time to consider how well your business is actually doing.

  55. February 7, 2008 by Christophe

    Have a look at Textpattern. Being a designer it is very easy to customize, no PHP needed, it works with build in tags. You even don’t have to learn them, with 3-4 clicks you can make your own personilized tags. Very powerful with the “if individual article” property you can customize each page like you want it to be. Very easy to style with the modules where you can insert html code combined with the TXP tags and insert them in the template. Also possiblity to create custom fields which is very helpful. And a lot of great plugins with a very helpful userforum. Looks like TXP is always forgotten between the open source CMSes, maybe because the lack of publicity of it.

    For me the best CMS all time, no big learning curve, easy-to-use and you can use it for sites with over 1000’s of pages like I do and just sttyle them exactly like you designed them.

    http://www.textpattern.com/ http://textpattern.org/ for the resources.

  56. After going through testing most of the well known CMS’s like Typo3 Mambo, Joomla ect. I desided to use MODx. The more I do in MODx the more I get addicted to it. Just released a accessible WAI AA Site with no hassle at all. Also my clients are getting immediatly used to the backend and like to work with MODx. A great feature is QuickEdit which for a lot of clients makes it not even necessary to go into the backend. To edit and adjsut content, they can simply do this in the Frontend itself.

    You want a hassle free CMS, I think MODx would have to be your first choice.

  57. Well I work for a company and we’ve been developing an open source java based platform that sits on liferay. It’s called dotCMS and the nice thing is pretty much all of the HTML comes from the user putting together the site. It uses velocity to pull out dynamic listing of content. It also includes the abillity to create content structures (same idea as CCK in drupal), so that users who need to enter content can fill in a simple form. There is also categorization of content and even the ability to create relationships between content nodes. It scales very well. Most of our clients are universities and colleges that need thousands of users and need to deal with alot of traffic. Check it out.

  58. oopps.. it’s dotcms.org

  59. February 7, 2008 by craig

    Just want to reiterate the recommendation that you look at Symphony, especially version 2, which is in beta and will be open-sourced once released.

    I’ve used almost every other CMS mentioned here (Drupal, WP, Textpattern, Expression Engine, etc.) and have come to prefer Symphony for just about every imaginable project. I haven’t seen anything else as flexible, or that gives you as much control over your site’s architecture and design layer.

    Switching to Symphony was like when I first switched to CSS…. remember that feeling?

  60. I’ve been through quite a few of the above options mostly as a front end developer.

    My first CMS site was done with Joomla, it was an extremely frustrating experience, and I ended up purchasing a template to meet a deadline after trying my own theme for several weeks.

    After that I moved on to ModX and was much happier with the template system and had a decent site up and running very quickly.

    In between I had customized a few Wordpress installs, but Wordpress should really be left for blog only sites in my opinion.

    I was hired by a company using Drupal as their CMS around this time, so all though I was happy with ModX I haven’t touched it in over a year.

    My year with Drupal was frustating for the first month or two trying to understands Drupals unique logic and way of doing things, but after that I’ve been more than happy.

    One huge benefit of Drupal is the massive number of contributed modules available. It is definitely possible for a non-programmer to string together a very interactive and custom site with contributed modules without ever touching a line of code.

    As I’ve gotten more involved I have been spending more time modifying the themable functions mentioned earlier as well as writing a few of my own utility modules to create custom behavior, as well as modifying contributed modules as needed. The Drupal documentation is sometimes lacking, but I would say this is a problem with every open source project (with PHP as the possible exception). There are two relatively new books out (Pro Drupal Development, and Drupal 5 Themes) that make the learning curve way less steep.

    The non-stop addition and improvement of API’s both user contributed as well as part of Drupal core makes using the powerful functionality of Drupal less of a chore, and feels more similar to using something like CakePHP than writing your code from scratch once you get the hang of it.

    I’ve never had a problem creating a standards compliant site with Drupal. I would say that overall Drupal core is 99% compliant, and it is usually only contributed modules and themes that introduce non-standard code. If you’re writing your own theme, Drupal will provide you with reasonably clean HTML blocks to theme. As mentioned previously the admin is fully themeable and the underlying markup is accessible. The addition of a lot of jquery to drupal core may change this slightly, but none of these scripts will be necessary for the administration interface to function.

    Overall I’m a huge Drupal fan now, and would barely consider using another CMS for any project I’m presented with, every time I’ve seen a problem with the way something works, its been improved in the next version.

  61. February 7, 2008 by craig

    Oh, and Symphony is based on XML and XSLT. Super easy to feed data in and out. No proprietary templating language. Plays very well with others…

  62. I’m going to suggest ExpressionEngine. I know you’re looking for open source, but it’s pretty damn close. It’s feature-rich and you can create any content entities you want. I’m building sites storing real estate listings and jobs at the moment, entirely through the EE admin. It’s as standards-compliant as you code your freeform templates.

  63. Having used Joomla I have to say I find the interface very difficult and confusing to use. The way components are organised does not seems logical.

    This won’t help you right now but as a slight aside I have been considering starting development of an open source CMS that is fully standards driven from the start. Rather than just making sure it validates I would like to develop a CMS that is designed with accessibility and usability at the core. As a student a lot of time is taken with studies but it is something that I am hoping to start developing with a friend. I would be very interested to hear what you consider to be the most vital requirements of a CMS are for you as well as where you feel most CMS’ fail in relation to accessibility.

  64. I’ll second Symphony, it gives you complete control over your markup and presentation by using XSLT.

    Essentially, you define sections, and data sources which read sections and then create an XML document, which then gets run through your XSLT.

    If you want to talk about how awesome it is ;) join: irc.freenode.net/symphony

  65. I’ve taken over an existing Joomla site and it’s a total nightmare. Joomla doesn’t do RSS feeds or clean URLs without extra modules. Its basic search doesn’t include content added by modules — each module has to come with its own search add-on — and the search results will be presented in the order the content was added — not the most relevant! — without (wait for it) another module. Some of these problems are fixed in 1.5, but most of the modules haven’t been updated yet.

    The problem with all these extra modules is that they often don’t play well together. Then there’s the problem of module development itself.

    Here’s a scenario: You need to add a calendar to your site for your organization’s events. You’d like the next — oh, let’s say five upcoming events to be displayed on the home page, with a link to the full calendar. You’d like the full calendar to be displayed as a grid, rather than a simple list. You’d like people to be able to subscribe to the calendar via the iCal standard. Your content authors should be able to add events from the administration screen just as they do articles.

    Simple, right? These are the basic features you’d expect of a calendar function. I’m not asking for multiple calendars, categories, importing, or anything fancy like that. But I can’t accomplish this goal in Joomla. The closest module, JCal Pro, does everything but the iCal export, which is crucial. Other modules will give you a list of upcoming events and the iCal feed, but only if the events come from some other calendar site, like Google Calendar or a separate phpicalendar installation. Other modules will allow you to register attendees for events — something I’d love to do! — but not display the events in a sensible manner. There are in fact dozens of event/calendar modules for Joomla, but not one of them encompasses all the basic requirements of a calendar.

    Now, calendaring is hard, and a lot of CMSs get it wrong. However, this scenario is typical of Joomla module development in general. Unlike Drupal developers, Joomla developers don’t work together to create one calendar module that works; instead they each create their own incomplete modules. There are two problems here: one, there’s no central code repository for modules, where patches and suggestions could be offered, other than the forum; and two, there’s a booming business of commercial module development — JCal Pro, for example, isn’t free — and there’s not much incentive to collaborate when you want to charge money for your end product. The end result, though, is an open source project that isn’t open. Developers can’t contribute to the better modules; instead they have to start over. And the poor website owner spends hours combing through the extensions, only to find that what she needs doesn’t exist.

    I could name half a dozen examples other than calendars. Blogs with comments and categories, for example, are virtually impossible to create in Joomla without a (defunct) plugin that integrates WordPress!

    And Peter@38 is right about the markup — even if you do develop your own standards-compliant template, it’ll be injected with crap as soon as you add a module.

    I’m planning on moving this site to Drupal as soon as possible, since I’ve used it in the past and I know its little quirks, but I’m looking into some of the other systems mentioned in this thread as well.

  66. February 7, 2008 by Rene Heroux

    I’ve been pondering this same question as well. I’m about to dive into redesigning a real estate website and the CMS I’ve been looking into right now is Textpattern (Christophe mentions it above).

    It seems to have a very small footprint, it was very easy to install and it’s also really easy to lay your website out normally and then “splice” it into Textpattern.

    However, I’m worried about how hard it might be to get the actual code that deals with adding/editing real estate listings jiving with Textpattern.

    I’d like to pick just one CMS and have it be the CMS I go to from here on out.

    Has anyone here had experience with customizing Textpattern to work with heavy PHP/MySQL customization like this?

    Thanks!

  67. @Rene: Textpattern has only one type of content (“article”) and depending on how you define “content management” this is a bottleneck. However, you can add 1-10 custom fields to your article and thus expand Textpattern’s use to online stores etc, using plugins.

    Biased as I might be, I find it a great relief to work with Textpattern since is has most “modern” things built in: RSS, nice separation of content and presentation and a smart way to reuse code snippets (“forms”) between your templates (“pages”).

    Textpattern will never be as low level as Rails though. I think this is what Roger (or at least I) want the most. Something like Textpattern but with a choice one level above the Write tab: “What do you want to create?”, giving the user a list of different types of content, be it an article, a blog post, an event etc. All predefined by us developers for that particular client/website.

    I cannot guarantee you’ll be able to use Textpattern for “real estate listings” though. And I wouldn’t encourage modding the code to do it, at least not if you plan to keep upgrading Textpattern. Drupal might be a better choice if you want to create a layer between the core application and the admin interface.

    cheers,

    /Anton

  68. How easy (or hard) are ModX and Drupal to develop for? Easier and more robust than Drupal or Joomla 1.5

    How easy (or hard) is using them to create content and administer websites? Easier and more powerful than Drupal and Joomla 1.5

    Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes? I have no problems whatsoever with creating completely standards compliant sites. For the life of me I cannot understand why the Joomla devs insist on 100% width tables to hold the HTML output. It makes no sense at all.

    So I’m done with developing Joomla and Drupal sites. Done. There will still be a market for them, just like their’s a market for gasoline even though renewable energy is a far more compelling options.

    And MODx is just that: far more compelling. It has taken me 2+ months to de-program myself and learn MODx’s superior, flexible and straight forward way of getting things done.

    3 things I love about MODx: 1) No more menu building. I’ve wasted hours explaining to clients how Joomla builds menus. It’s nuts. MODx builds them automatically, or you can choose to not have them in the menu (and there are very good reasons for that). 2) Web standards compliant features. -Bye bye td=”tablecontentheading”. Hello h1, h2, h3 tags! -Awesome ultra SEF URLs no matter how much the Joomla devs protest that their router is better. -Awesome meta tags and keyword controls. With Joomla you’re stuck with the meta tags they toss in carelessly, or with the tags that come with the template. MODx: compeltely customizeable for every single page you create and using the same template. Amazing. 3) Foxycart. Period. Finally an eCommerce app that will run on your server or theirs. Better and more easily administrated than PayPal. No more horrible VirtueMart. No more waiting for other apps to get upgraded. No more messing with complex shipping modules. More control, faster turn-around time. I think I can get an eCommerce site of 20 products and content up on a MODx site in 8 hours compared with weeks of tweaking the horribly bloated VM code, and that is if you have the time to burn to find the correct file in the first place.

    Are their admin interfaces reasonably accessible? If not, can they be made accessible? I think MODx is pretty straightforward. I try to stick with clients who are reasonably bright and not afraid to “mess up”. MODx is almost too simple, especially compared to Joomla’s back end. In MODx everything righ there in front of you, ready to create content. Bye bye Sections, Categories. Hello common sense directories and auto-menu building.

  69. With ExpressionEngine 2.0 looming on the horizon, now seems like the perfect time to start learning and using this fantastic product. I’ve been able to achieve so much with EE over the years that I can’t imagine using any other CMS on the market.

  70. Just thought I would clarify something that wasn’t immediately obvious to me:

    Symphony, the “Web Publishing System” is different than Symfony the “Web PHP Framework”.

    At first I thought everyone here was talking about Symfony, which I already knew about, so I didn’t really give it any thought. But after seeing the positive comments I figured I’d give it another look and realized it’s not what I thought it was.

  71. February 7, 2008 by punker

    Take another look at Plone. I too had a hard time with it a few years ago, but the improvements that have been made are incredible. I just installed Plone 3.0. The administration side didn’t change much, but there is true power with managing a Plone site that your customer will love. I’m still in awe of the changes they made.

  72. I would go for MODx - what others have said is true for me too - I don’t develop static sites anymore either. I just use MODx for everything - it’s flexible enough to cope with this easily, and it’s much easier for everyone - even if the client doesn’t want or see the CMS.

    Maybe some code would answer your questions best. This is the MODx template used for the product pages on one of our sites.

    This is one of the pages that uses this template: http://www.logic-office.co.uk/index.php?id=75

    In the template {{these}} are chunks - canned re-useable bits of HTML (that can contain nested vars, chunks, etc) and [*these*] are template variables which users creating/editing the page can fill in. These get their content output into the returned page. E.g. [*content*] outputs the content of the ‘content’ variable - which contains the page’s content. You can create your own variables and assign them to templates. Var’s can contain pretty much anything - e.g. these variables [*small_product_image_1*] contains pictures.

    This: [!Ditto? ... !] is a call to a snippet - a bit of PHP which does stuff - in this case builds an index of sub-pages and outputs the results, using chunks of your HTML code to output each item.

    Anyway, you don’t need to understand all the details to appreciate that you control all the code which is output to the browser - the template contains everything and is very flexible. You don’t need to hack anything or much around with PHP or whatnot if you don’t want to - you can do most sites just using code like this, which you can create using whatever your normal HTML work flow is.

    Here’s the template:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> {{logicpagetitle}} {{logictemplatemetatags}}
    {{logic
    commonstylesheets}}
    {{logic
    productstylesheet}} {{logiciefixesstylesheets}} {{logiciefixes_scripts}}

    <body>  
        <div id="container">
            {{logic_page_header}}
    
            {{logic_navigation_column}}
    
            <div id="content_col">
                <!-- Top Page copy -->
                <div id="top_nav">
                    [!Ditto? &startID=`[*parent*]` &sortBy=`menuindex` &summarize=`all` &sortDir=`asc` &tpl=`product_page_top_item` &tplCurrentDocument=`product_page_top_item_current`!]
                </div>
    
                <div id="content">
                    <div id="main_image_div">
                        <a id="large_product_image_3" href="[*huge_product_image_3*]" rel="lightbox">[*large_product_image_3*]</a>
                        <a id="large_product_image_2" href="[*huge_product_image_2*]" rel="lightbox">[*large_product_image_2*]</a>
                        <a id="large_product_image_1" href="[*huge_product_image_1*]" rel="lightbox">[*large_product_image_1*]</a>
    
                        <div id="image_text"><p>[*small_product_image_1_text*]</p></div>
    
                        <div id="small_images">
                            [*small_product_image_1*]
                            [*small_product_image_2*]
                            [*small_product_image_3*]
                        </div>
                    </div>
    
                    <div id="product_table">
                        [*content*]
                    </div>
                    <br style="clear: both;" />
                </div>
            </div>
        </div>
    {{google_analytics}}
    </body>
    

  73. I have experience with Mambo (kissing cousin of Joomla), Drupal, and Textpattern, and I highly recommend Textpattern. Mambo (and thus Joomla, I assume) is bloated and difficult to customize. Drupal is definitely by and for programmers, and is very complex, resulting in black boxes. If you choose Drupal, you had better be prepared to live and breathe Drupal for a month or two to learn the system and learn how to customize it. It’s extremely flexible, but extremely complex. The thing which makes me not want to use it, however, is the black boxes. In a recent, very complex website I have been working on with a PHP developer new to Drupal, there is a plague of uncurable div-itis, sometimes with as many as ten nested divs due to the way Drupal nests its blocks and panels. Another issue is the footprint. Drupal is very heavy due to its complexity, and this PHP developer I’m working with was getting 3-4 second load times on most pages, forcing him to implement a manual disk-caching mechanism.

    I strongly recommend Textpattern for its simplicity and elegance. Yeah, it only has one content type, but it uses “forms” which are elements which allow you to display that content in whatever fashion you want, resulting in almost as much flexibility as Drupal. If you need more flexibility, you can develop a plugin, which is easy to do due to Textpattern’s simplicity. The best part about it is that it outputs excellent, elegant code, with absolutely zero chance of black boxes because it only outputs what you tell it to output. Also, the admin interface is so simple and elegant that it’s easy for non-techy people to use, and it’s completely separate from the site itself, unlike Drupal, which combines the front-end and back-end, resulting in confusion. I’m not positive if the back-end is accessible, but I’m 99% sure that it is, due to the simplicity of the whole system.

  74. I would recommend looking at: Absolut Engine CMS / framework in PHP with MySQL.

    Although more of framework with modules, it does not have any HTML/CSS output. It outputs the clear text from DB system) and it’s up to you how to handle it (put it into your design with your XHTML/CSS) - e.g. no templates as PHP functions themselves are templates.

    supports clean URLs (search engine friendly URLs), bunch of modules ready.

  75. From a designer to a designer who also uses Movable Type: the so-called “powerful and easy code hooks of Drupal” are nothing but easy. I came to love Movable Type’s templating system only when I tried to modify the code that Drupal spits out.

  76. February 7, 2008 by Maniquí

    Obviously, I haven’t tried every CMS out there, but I have tried and worked with Textpattern, Wordpress, Joomla, Drupal (and CivicSpace), and also with frameworks (Zope and Django).

    First, I’m not a programmer. My expertise is coding (x)HTML and CSS (and a bit of JS), converting graphic designs into tangible websites. Of course, I don’t do static websites anymore, so I looked for a CMS that was an empty canvas, without black boxes, with basic functionality but also extensible if needed, and a simple back-end.

    Textpattern is my choice, but let’s talk about it later.

    Drupal is a beast, and as someone said above, it suffers from div-itis and class=”block-block-block-328”, and the front and back-end are merged, making it difficult to understand what your visitors could really navigate and read. Also, I didn’t like that Drupal tried to re-invent some web terminology (“Everything in Drupal is a node”). Also, it’s plenty of black-boxes and it spits outpre-defined HTML/CSS that you would probably have to undo and redo. I felt that I was hacking Drupal each time I tried to do something. Finally, I gave up: Drupal wasn’t for me.

    Also, I have worked with Wordpress and I don’t get why it is so successful among web-designers/web-developers. First, it’s a blogging tool, not a proper CMS. But adapting a design to WP is also a pain: touching PHP code here and there, uploading files through FTP… Also, there are a bug fix releases every time, so maintenance and updating is a pain too.

    The last time I played with Joomla, it was a tag soup of nested tables. I didn’t enjoy to work with it at all. The admin side is overbloated, not intuitive… and also it seems to be prone to security issues all the time.

    Both Zope and Django play in a major league, where strong programming knowledge is needed. But the advantage, I think, is that there isn’t any black boxes there.

    Going back to Textpattern, it was what I was looking for: empty canvas, no black boxes, small core extensible through plug-ins, a clean and simple admin side. All the content and presentation (templates and CSS) is done through the admin side and saved on the database, so you can work on a TxP site using just your browser. You don’t have to touch any PHP file nor use any FTP client (of course, you have to do it during the install process but then, you are freed).

    And if you want to extend TxP, you have a variety of plug-ins. Installing a plug-in is as simple as copy and pasting a base64 code into a textarea on the admin side. No files nor FTP involved in the vast majority of cases.

    Updating TxP to a new version is a pleasure. It just takes a few minutes and it’s a matter of uploading the new version to the server and check that everything keeps working as always (that is what usually happens).

    Finally, I find Textpattern community to be very friendly and helpful.

  77. Be sure to let us know which you chose and why!

  78. CMS Made Simple is a CMS i’d recommend for it’s ease of use. I’d compare it to MODx as far as how the template system works.

    I’ve had some customer complaints about MODx as far as things being overly complicated, and not working they way you would expect. If you’re considering MODx, I’d recommend CMS MS as a similar option.

  79. February 7, 2008 by Richard

    I also recommend Expression Engine. I have used a couple times its very easy to setup and use, and very well documented.

  80. February 7, 2008 by Shane

    In going over the replies so far, in general I see a pattern here:

    If you want a CMS with a gazillion ready made add-ons then Drupal seems to be the winner.

    But if you are looking for freedom and flexibility with full control of the output then MODx seems to be the winner.

    Just thought that was interesting. Drupal’s high point seems to be the number of tools available and MODx’s seems to be it’s flexibility. Funny how these two have been tossed into the same mix since they are actually very different approaches to content management.

  81. We’re just about to release an open-source, ColdFusion based CMS (Sava CMS) that has been designed from the ground up with standards in mind and the utmost attention to the needs of a css developer. It’s basically a xhtml code generator that supplies dynamic css hooks, making development time as fast as it can be. Sava is an enterprise grade, mid-level cms, is extensible and full featured and has been real world tested in an actual dev environment for real clients (www.heathceramics.com, www.amtrakcalifornia.com, ) for more than six years.

    Apologies if this sounds like an ad, we’re just really excited about releasing it to more than just our clients (and this post happened a few weeks too soon).

    If anyone would like to know when it’s released in the next few weeks, please contact us.

  82. February 7, 2008 by Oliver

    Another Java based CMS is Alfresco. It seems to be very flexible on front-end modifications, and is open source unless you would like to purchase support.

  83. Phew… A lot of replies and a lot of information to parse. It sounds like this is really a tough topic to tackle and there probably isn’t a clear cut answer.

    Most of my experience (about 2 years) has been with Wordpress as a CMS. Overall it has been a good experience, however the primary downside is that it is more built out of the box as a blogging platform. One positive that can come out of this though is the ease with which you can integrate your blog and site together. The primary upside of Wordpress as a CMS is that the interface is very intuitive, clean and simple. I feel comfortable and I know my clients feel comfortable navigating the Wordpress backend. The other upside is the availability of plugins and the simplicity of the template system that can neutralize the out of the box blogging downside mentioned before. There are practically plugins to be able to do anything. Sometimes though the support or stability of the plugins can be flaky, but the majority of my experience has been good.

    I also tried Joomla! (pre 1.5) and like many other have mentioned, its table markup is horrendous and the admin backend is confusing. Recently though with the release of 1.5 it seems there have been some significant improvements, the table markup is basically gone. Everything is much cleaner now. And the admin interface, after buying a book on Joomla and following through it, has become more understandable. Virtuemart is also set to release a new native 1.5 version that should also improve. Even though it may be complex, I think with all the features that it comes with make it worth the learning curve if you need a feature rich shopping cart solution. The same thing goes for ZenCart. It took me around 6 months to master but it is superior if you need an enterprise level open source shopping cart.

    I’ve checked out Modx and it also looks very promising, but when I looked for a robust eCommerce addon all I found was KiweeCommerce which appears to be kaput. FoxyCart looks ok but I really don’t like the idea of a monthly charge.

    I’ve also tried Drupal and Expression Engine but again was turned away for lack of robust eCommerce addons.

    That’s sort of what it’s come down to for me and the only two that stand out are Joomla’s Virtuemart and Wordpress’ WP e-Commerce plugin. The latter of which has a lot of potential but still has some bugs and can be difficult to fully customize…

    So, for now I’ve decided to stick with Joomla 1.5. The new Virtuemart is due out sometime in the next month or two so I’m banking on that. And ultimately I decide on a project by project basis. Wordpress is great for simple sites but can become a pain to work with on larger sites. Joomla seems to be able to handle the big ones.

    A couple other options to keep an eye on (currently in development) are:

    Magento

    Substruct

  84. WordPress would work as a proper CMS, if - and only if - it would contain stuff like a seperate menu structure you could assign to each single Page.

    Right now I’m using a self-made framework called Likwik CMS that allows me to quickly create sites and admin interfaces. Its heavily influenced by Wordpress thou.

    Thats because I’ve been working with WordPress since start of 2003 by now, thus I like some of the nicities of WPs template system and API around the apps and sites I develop.

    I’ve also started work on a CMS-variation of WordPress but stopped by now because of too much work to do at my job, but also to see how WP 2.5 turns out during the next few months.

    cu, w0lf.

  85. February 7, 2008 by Crusader

    I am wondering why do you say that there are hundreds of options.

    In fact, there are only 3 major open source CMS:

    Drupal Joomla Wordpress

    Choose one, and you can’t go wrong.

    I recommend Drupal, the new version 6 will release next week. It has a very active community, and over 2000 contributed modules. The security is also top-notch.

    You can learn more about the new features in version 6 here: http://www.masteringdrupal.com/screencast/new-features-drupal-6

  86. February 7, 2008 by James Petersen

    I may very well be missing something, but the open-source alternatives to Plone and Drupal seem to be lacking in the following common (in the business world) requirements for a CMS: content versioning, visual diffs, access permissions based on user roles, workflows based on user roles, workflow creation tools, user activity reports (incomplete tasks, last login, et cetera), content reports (number of pages older than a certain date, et cetera), internal and external link management, content scheduling and expiration, well-documented APIs.

    Even Plone and Drupal seem to have “tacked-on” support for these features (though they may have improved since I last checked). Commercial content management systems may be clumsy, frustrating, and inaccessible, but they at least attempt to address business requirements for Web content management.

    CMS Watch (http://www.cmswatch.com/) has some coverage of open-source CMS products. You will have to pay to view their Web CMS Report, but their Web CMS Kudos and Shortcomings, Circa 2007 page (http://www.cmswatch.com/Feature/164-WCM-Marketplace) is free and interesting (IMO).

  87. February 7, 2008 by Crusader

    There is also an easy method how to choose: look at the traffic of these sites, and you will know how big is the community behind each CMS. Bigger community means better software, more modules, more security patches.

    http://drupal.org/ Alexa rank: 1200

    http://joomla.org/ 850

    http://modxcms.com/ 18000

    http://plone.org/ 25000

    http://wordpress.org/ 650

  88. MODx does now have a dedicated eCommerce Module available called TreasureChest Cart (http://www.treasurechestcart.com/) but currently it only supports Paypal. It is by no means a high level eCom app. It is not OSCommerce or Miva by any stretch of the imagination.

  89. @Crusader a billion idiots flocking to a site does not mean superior product. I don’t think because WordPress has the highest readership that it is better (although it is an awesome, well designed blogging app). Maybe those sites have such high traffic because more people are having trouble trying to make it work and need to spend day in an day out coming back to the site for the forums to make a hack work.

    Even though I am a MODxer, many CMS applications are good and whatever works for the developer or their team is the one that you should choose.

    One way I will agree with Crusader is that a CMS that no one uses will likely die and then what do you do?

  90. Modx. I spent months testing in great detail lots of CMS to test out and use. Specifically for being to be able to create customisable accessible and compliant sites of different complexities with me, the developer in control. Modx has a wonderful supportive active community, and once you get your head around how it all works in the back end, designing your own code handling is fairly easy. Another one, more lightweight (that I blogged about recently) to keep an eye on is sNews which holds up really well for accessibility and standards too and am developing with it for a few sites. Drupal and Joomla, well okay, but if you are looking for freedom, adaptability and for it to work in the way you want to Modx is wonderful.

  91. February 7, 2008 by Peter

    Try basecmp http://www.basecmp.de/ unfortunately I could only find the german website. Java based, you build the complete frontend, easy to use for both developer and content author. Open Source.

  92. In the last years I’ve been testing and developing sites with a lot of CMS.

    I made a lot of sites with Joomla, but I stop using it because of issues with their generated code (not accessible and full of tables - I was a newbie in accessibility). I think this has been resolved in 1.5

    Now I’m creating small sites with modx, because it’s really easy to create accessible sites and extend it.

    For big projects I use eZ Publish, it really has a steep learning curve, but their online documentation is very useful. It is possible to create 100% accessible front end site (default admin isn’t 100% accessible, but quite good and there are projects to improve them).

    There is no perfect CMS, just CMS that are better for one or other needs.

  93. February 8, 2008 by miaik

    Let me put it this way, just download and install ModX, and within 30 min. you’ll decide if its good for you, I’ve tried almost every CMS and let me tell you that ModX is the future, maybe you’ll find it too hard to learn (I feel that way) but nonetheless its worth it, you’re in complete control regarding anything, with it you could build anything, its really up to you, oh and one other thing, while I was exploring ModX I bumped into wall, so I switched back to Drupal, and guess what, after 1 day messing with it, I switched back to ModX, its maybe a bit hard to get used to it,but its worth it, I now look at it like this, “Learning ModX is like learning to ride a bike, it seems too hard, but once you grasp the balance with it, it becomes so joyfull and you just want to ride it again and again…”

  94. James Petersen said:

    I may very well be missing something, but the open-source alternatives to Plone and Drupal seem to be lacking in the following common (in the business world) requirements for a CMS: content versioning, visual diffs, access permissions based on user roles, workflows based on user roles, workflow creation tools, user activity reports (incomplete tasks, last login, et cetera), content reports (number of pages older than a certain date, et cetera), internal and external link management, content scheduling and expiration, well-documented APIs.

    I think many are talking about a CMS solution and have not addressed many of the issues of an internal business portal. Do any of the open source solutions out there meet the needs of a portal?

    • Who is the user?
    • What are they supposed to see? Does user A have a different experience than user B because of who they are or the group or division they belong to or their work responsibilities?
    • Can the user customize their own experience?
    • Do they have content versioning?
    • Can they “revert” to a previous version?
    • Is there a workflow implemented where pages have to be “approved” before going live?
    • Can pages automatically expire?
    • Can pages automatically publish on a specific date?
    • Does the CMS part prevent users from entering “bad” code? What happens if a user pastes a Microsoft Word document as content?

    Are there any open source solutions that meet these needs?

  95. Another for Expression Engine, open code but not free. Great documentation, an actual community and tons of useful plugins. The template language is easy to learn and incredibly powerful, the backend is very tweakable and the code base is secure.

  96. Just wanted to point out that the built-in editor alone in modx is larger than the whole of Drupal core. Also didn’t love the heavy Javascript dependency/bloat in modx and annoying ‘Please wait while MODx loads the page…’ lameness in the admin area.

    Speed and usability have been greatly improved in Drupal 6. It’s small, fast, stable and standards compliant. Have yet to come across a better API, particularly the hooks and Forms API (build forms using arrays, use it once and you won’t want to create a form without it ever again). Basically Drupal gives you an excellent base and API, from there add modules from the repository, build your own, or pay someone to do it for you. Drupal is software Lego, add the functionality you need, nothing more. No bloat: full stop.

  97. I’m going to suggest that if your data is more complex than what can be handled by WordPress, a CMS like Drupal et al is probably a bad idea. Vanilla content management systems meant to hold arbitrary data aren’t really great at holding any type of data. Community-driven products like Drupal often have many modules available, but they’re usually of dubious quality. One drupal hacker I know admitted to having to rewrite the entire credit card module because it had some basic security issues. This warning holds doubly true if you have any interest in sane front-end code. Plus in my experience these modules only get you 90% of where you need to go, and that last 10% is the hardest.

    A well-written framework with a really smart MVC and RESTful infrastructure—like Rails—will probably be just as quick to develop on and be far more flexible for front-end work. Add a plug-in like active_scaffold for rote forms and restulf_authentication and you have almost everything most CMSes offer.

    I had to sound cynic, but in every CMS-based project I’ve ever worked on, once the CMS was in place it quickly became painfully restrictive to how the project wanted to grow. Plus, you never really know what you’re going to need in a CMS until after you’re using it—better to build something flexible than a monolithic system that you will quickly outgrow.

  98. February 8, 2008 by Roger Johansson (Author comment)

    Wow, what a massive response. I didn’t expect this many comments.

    I won’t have time to respond to each comment, but thanks to everyone who has participated in this discussion. It has made me aware of a couple of options I don’t think anyone on our team has taken a close look at.

    What I am missing from this is feedback on portal software. A “normal” CMS is fine for smaller sites or clients with only a couple of people working with the content. But for really big sites, multi-national corporations, and organisations with perhaps hundreds or even thousands of editors, there is often a need for a different approach. This has been mentioned in a couple of comments here:

    James Petersen:

    I may very well be missing something, but the open-source alternatives to Plone and Drupal seem to be lacking in the following common (in the business world) requirements for a CMS: content versioning, visual diffs, access permissions based on user roles, workflows based on user roles, workflow creation tools, user activity reports (incomplete tasks, last login, et cetera), content reports (number of pages older than a certain date, et cetera), internal and external link management, content scheduling and expiration, well-documented APIs

    Yes, even though they will make a product more complex to use, those are all features that are definitely necessary in many cases. If they aren’t there, the product would be regarded as “toy software” by some.

    Tanny O’Haley:

    • Who is the user?
    • What are they supposed to see? Does user A have a different experience than user B because of who they are or the group or division they belong to or their work responsibilities?
    • Can the user customize their own experience?
    • Do they have content versioning?
    • Can they “revert” to a previous version?
    • Is there a workflow implemented where pages have to be “approved” before going live?
    • Can pages automatically expire?
    • Can pages automatically publish on a specific date?
    • Does the CMS part prevent users from entering “bad” code? What happens if a user pastes a Microsoft Word document as content?

    Good list. Those are all features that are necessary when we’re talking about portals and our clients would expect to have most of them in any CMS.

    On to some of the other comments.

    Some have suggested using a framework like Django or Ruby on Rails, and yeah, for smaller sites that may be an option (which we have explored by using RoR).

    There are many proponents of ModX, Drupal, Symphony, SilverStripe, TextPattern, and Expression Engine ( and no, the pricing is not a problem ;-) ), all of which seem to have their pros. We will have to look closer at each of them before we can get a feel for which is right for us and our clients.

    We actually use TextPattern for one client, and it seems to work fairly well. It’s not for everyone though.

    Erik Töyrä:

    I hope you will have some use for this Roger. I tried to live up to the “Be willing to give back” post you published yesterday.

    Definitely useful, so thanks for the long comment!

    Luke:

    Be sure to let us know which you chose and why!

    Yep, but it will take a while before we’ve had time to try out some options and make a decision.

    Oliver:

    Another Java based CMS is Alfresco. It seems to be very flexible on front-end modifications, and is open source unless you would like to purchase support.

    Alfresco seems to be what some organisations are looking for: enterprise level content management. Will check it out.

    Again, thanks to everyone who has taken the time to post a comment here. It’s very helpful.

  99. I’ve extensively used Joomla and Drupal and I would recommend Drupal in a heartbeat.

    The thing to know about Joomla is that it looks great out-of-the-box and is very easy to setup. However, you do not have control over the HTML it outputs.

    This was a constant source of frustration for me because while you have the option to output your menus in HTML lists, you don’t get proper CSS hooks for those menus unless you output them as tables. Ugh.

    One last point on Joomla. For all of the standards-compliant, accessible code you carefully craft into a Joomla template, Joomla wraps the whole thing in a table. It is horribly frustrating. Some of these things may have been fixed in the recent 1.5 stable release, but at least in the 1.5 beta it was still pouring my template into a table.

    I’ve been using Drupal for almost a year and will admit that there is still stuff about the admin interface that confuses me. I still regularly get lost trying to find a setting. Drupal has a learning curve that can be daunting. However, the rewards for getting through that curve are worth every second of frustration.

    The key to Drupal is the community. Drupal has a great community that is happy to help you learn and solve problems.

    You have complete control over most* of the HTML/CSS in your template, and there are hooks to modify the output of everything that goes to your template, though you need some good PHP chops to bend some things to your will. (* Good PHP chops are important, Drupal is a developer’s CMS. That said, the templating system is top-notch)

    A lot of what I’m complaining about will disappear if you start with Drupal 6, which should be out in the next couple of weeks. I’ve found updating Drupal to be very easy because Drupal is modular. You do not have to (and it is highly recommended that you don’t) modify the core to get Drupal to do what you want.

    Drupal has a lot of momentum and quality in it’s developer community, and I see it only getting better. Additionally, the 3rd party modules for Drupal are impressive in both quality and support.

    I got my company to switch to Drupal from Joomla a year ago and we’ve not had any reason to revisit that decision. We use Wordpress for smaller, brochure sites. But Drupal is our mainstay for larger corporate and higher education sites.

  100. February 8, 2008 by Erik Töyrä

    Roger:

    What I am missing from this is feedback on portal software. A “normal” CMS is fine for smaller sites or clients with only a couple of people working with the content. But for really big sites, multi-national corporations, and organisations with perhaps hundreds or even thousands of editors, there is often a need for a different approach.

    On top of that multi-national corporations often needs to have multi-lingual content. When taking this into consideration it is safe to say that “Our list of allies are growing thin…” in the open source CMS community.

    Multi-lingual sites demands a lot more of the CMS than a single language site does. James Petersen wrote in a previous comment about versioning, visual diffs, access permissions and workflows based on user roles. These are all very important parts to be successful with a multi-lingual site and support the complex process of handling multi-lingual content. The CMS also needs to have i18n (internationalization) and L10n (Localization) support which unfortunately rules out most of the available open source alternatives.

    Another feature to take into consideration for large multi-lingual corporate sites is import/export of content. This can be very useful when having to deal with multi-lingual content since you can handle the (often complicated) translation process outside the CMS.

    So far I have not been able to find any CMS that handles this well. Of the different CMS I have tested I must say Drupal handles the translation process best of the bunch - but it still has a long way to go before it could be labeled “Perfect”.

  101. MODX as a Portal Engine

    *Does user A have a different experience than user B because of who they are or the group or division they belong to or their work responsibilities?

    Users are assigned to userGroups, documents to DocumentsGroups; the admin sets which kind of privileges each UserGRoup as on a certain DocGroup. Then there are Roles to decide if a user can just edit things, or create new content, or publish/unpublish, move things around, delete, switch templates and on and on.. Modx docs about this

    *Do they have content versioning?

    Should be in the next 0.9.7 release

    *Is there a workflow implemented where pages have to be “approved” before going live?

    The admin can set such a workflow by creating ad hoch Roles (editors and reviewers)

    Can pages automatically expire? Can pages automatically publish on a specific date?

    Yes! and the rss feed is automatically kept in sync with such settings.

    *Does the CMS part prevent users from entering “bad” code? What happens if a user pastes a Microsoft Word document as content?

    It depends, even Word documents can be build into a semantic-correct structure that would more or less translate in passable HTML!

    Anyhow users must always be instructed a bit about the back-end tools and the general guidelines of the site/project they will be involved in.

    The tinyMCE editing interface can easily be customized; for example I removed most of its default styling buttons, and linked the main css file, so that the classes defined in it became available in the editor toolbar.

  102. You’ve probably given up on reading by now but I’ll give another vote for Expression Engine. It’s just a shame that some of the code that comes with its default templates is a bit dodgy.

  103. February 8, 2008 by Chris Cena

    The company I work for was also looking for a CMS as a base solution for site production a couple of years ago. Our requirements were quite similar to yours. Drupal ended up as our choice, and although a lot has been mentioned already, some of our reasons for choosing Drupal are:

    Development
    • Drupal has a clean and robust code base, with an easy to use API. Documentation is also better than other similar solutions.
    • Extensibility. There’s a plethora of modules out there, and it’s relatively easy to customize them or create your own as well.
    Content
    • The wording in the admin-interface needs a little getting used to (what the heck is taxonomy, anyway).
    • You can customize the content types to your customer’s liking.
    • You have a choice of using plain text or WYSIWYG-editor modules.
    • The fine grained user/role access control is great.
    • There are a lot of options for the administrator, which can be both good and bad.
    Output
    • Page markup is highly customizable. You can control almost every aspect of the output through templates (take a look at the Zen template).
    • You can have different templates for frontend and administrative pages (yep, the admin-pages are customizable, too).
    • As far as I know, the level of accessibility is pretty high in regards to administration.
    • Usability is also a priority.
    Portal
    • I18n is available and a part of Drupal Core as of Drupal 6.
    • There are several ways to partition the site ie. for different departments.

    Other important features to mention are:

    • Drupal is PHP-based. You can find web servers running PHP “everywhere”, unlike Python (plone) and .NET (Umbraco).
    • Due to the clean code, Drupal is relatively lightweight compared to other systems.
    • Drupal has search engine friendly URLs out-of-the-box, although the new Joomla 1.5 also have them. A module for autogenerating nice URLs is also available.
    • Run multiple sites from the same code base.

    Some of the bad things, besides those already mentioned, are:

    • Drupal lacks good file/media management out-of-the-box.
    • Modules can suddenly be unmaintained.

    Good luck on your search!

  104. I would have to say that WordPress ticks all of your boxes the best.

    I have investigated WordPress vs Drupal in depth and consider WordPress to have the edge in terms of standards and simple interface. Drupal’s admin interface is a little awkward.

    Although a blogging platform, WordPress has essentially become a full CMS and I have used it for clients to create a full site with a blog on the site.

    Ian

  105. Have you looked at Mysource Matrix?

    http://matrix.squiz.net/

  106. edit side not site :)

  107. As of Joomla! 1.5 the entire code is rewritten according to the MVC pattern making the output a LOT cleaner. It is also possible to create your own output templates that overrides the standard output templates. That is, you can create an output template that delivers the standard compliant code you know you’ve been longing for.

    The entire experience of Joomla! 1.5 is much smoother than the previous Mambo derivative and as the icing on the cake you have one of the most active communities throughout the internet!

    Great post and superb comments!

  108. It’s not open source but it’s price won’t break the bank either: Expression Engine. It gives you complete control over what code ends up in your templates and is fully customizable with plugins, modules and extensions. Does a whole lot of things right with its out-of-the-box install as well. Excellent community as well!

  109. “To date I have never come across a CMS that doesn’t have serious flaws.”

    This is the most accurate description of the situation that I can imagine.

    I work as a web person for a public school district with 1400+ employees with access to our CMS, and if you thought that general CMS’s are bad, you should see the things that companies intend for teachers to use in districts our size. at least 90% of the offerings are scams - some entrepreneur pays two engineers to code something that half works, drops the engineers, hires sales people, the code is never updated again, and school districts buy into it!

  110. I know WordPress has been mentioned, and it was argued that the sites in need may be too complex for such a system, but I would have to echo the recommendation. It didn’t come overnight, but I have learned over the past couple years that I can do just about anything I want with WP as a back-end system. I now use it regularly on just about all my projects. One of the things about it I like the most is that I am afforded an exceptional amount of control. I’m able to correct any inherent issues by either adding arguments to the functions, adding a plugin to address my need, or by way or a theme modification or by creating a template (very easy to do). I am biased, though, having devoted a considerable amount of time to learning WP, I’ve fallen in love with the system.

  111. I’ll attempt to answer the list above for Drupal:

    • Who is the user? Not sure I understand the requirement here
    • What are they supposed to see? Does user A have a different experience than user B because of who they are or the group or division they belong to or their work responsibilities? Yes, although the question could be better specified: in Drupal users can change their theme, be assigned different menus (and menu items) according to role/permissions and allowed access to different pages and categories, they may also switch blocks on and off (as long as the admin has specified this is allowed)
    • Can the user customize their own experience? Yes, to an extent, see above. Again, this should be better specified. What do you need?!
    • Do they have content versioning? Yes. Part of Drupal core, and on every content type (including the ones you invent yourself)
    • Can they “revert” to a previous version? Yes, as long as a user has that permission. There’s also the Diff module for pretty-printing changes.
    • Is there a workflow implemented where pages have to be “approved” before going live? Yes. There are two workflow modules, both worth a look (as they are slightly different animals). workflow and workflow-ng (I’ve had the pleasure of hacking on the latter, it’s a good codebase) These are the general workflow modules, there are also a number for more specific tasks, beyond the scope of this discussion.
    • Can pages automatically expire? Yes.See: the Scheduler module
    • Can pages automatically publish on a specific date? Yes. See: Scheduler module
    • Does the CMS part prevent users from entering “bad” code? What happens if a user pastes a Microsoft Word document as content? Yes, to the first part. I’ve never tried pasting content from an MS Word doc, the result would have as much to do with the browser, OS and word processor as the CMS however. I can assure you that Drupal is capable of filtering nasty stuff out.

    I generally agree with the opinions expressed in #99 and #103, with one caveat: if you know what you’re doing with Drupal, it is possible (and not difficult), to make the interface simple for your clients. I’ve done it, took me about two hours to hide everything un-necessary and even edit some of the core forms (using the API, not hacking the code directly!) to change anything the user might find remotely confusing. The client was very happy (and this is a fickle client too).

    So far I have not been able to find any CMS that handles this well. Of the different CMS I have tested I must say Drupal handles the translation process best of the bunch - but it still has a long way to go before it could be labeled “Perfect”.

    Have you tried Drupal 6? It has much better support for translated content. Previously versions lacked core support for content translations, concentrating on translating the interface instead.

    The situation with translations still isn’t perfect in Drupal however, particularly for contributed modules (my own suffer in this regard).

  112. I just released my free open source CMS called PureEdit. It is a different look/take on CMS development.

    http://www.pureedit.com

  113. February 8, 2008 by Jason

    Having just gone through the experience of having to select a CMS I’m happy to see all the differing opinions here. Selecting a CMS was one of the most difficult problems I’ve faced as a developer. Roger’s original comment, “I find choosing a CMS incredibly difficult” is spot on.

    That said, we evaluated several open source and commercial products and narrowed it down to Drupal, Joomla, ExpressionEngine, and Sitellite. What surprises me is that Sitellite seems to fly under the radar and it hasn’t been mentioned in the 100+ posts prior to this one. We decided to go with Sitellite primarily because of its feature set. The other serious contender we looked at, ExpressionEngine, seemed solid on the surface, but when you realize that it lacks an integrated WYSIWYG editor (like TinyMCE), file locking, and a file manager. Granted some of these features are available as user-contributed plug-ins, but when you need support you don’t want to hop that someone in a forum gets back to you with a solution. In our opinion, a worthy CMS contender should be versatile enough for the company secretary to use, and have enough features to handle things like reverting to previous versions, simple formatting of entries, and the ability to easily manage assets.

    Sitellite handles Tanny O’Haley’s question set extremely well and so far we’re very happy with it. Check it out at sitellite.org, there’s an open source as well as professional and enterprise versions available.

  114. February 8, 2008 by Laszlo Vasquez

    Personally i think that all CMS-systems mentioned here are real bloatware, dont get me wrong, i like the way how some of them present and solve the task of content management, but this admiration comes from a geeks point-of-view (MODx, TYPOlight, REDAXO seemed to be good, JOOMLA/MAMBO aint that good if you look under the hood and Typo3 is to bloated for my taste and BLOG-Systems that call thereselfs a CMS-system dont count as a CMS)

    when i started to read all the 100 entrys i realy hoped someone would point me in the right direction for a very nice small, quick and yet flexible cms (i can say i already worked with all the PHP-based systems mentioned). A cms that doesnt irritate the end-user with some fancy terminology and shitload of unneccesary gui-elements or shitload of settings-pages, because the end-user (or lets call him the ordinary customer who is not a computer-geek) only wants to change or add a few lines of text quickly. A cms which doesnt bother even the experienced PHP-programmer with to much specialities and API-bloat if he wants to create just some template/form-based-pages quickly. A cms that is not multiple megabytes big when the webpage it should manage has less than 100 pages and is less than half a megabyte big ( if you dont count the few multimedia flash-banners). A cms that can be used to power XHTML/CSS webpages as well as dynamic FlashWebpages.

    How hard can it be to get all this in one small TINY package. Kind of small swiss-knife-CMS.

    Does anyone know such a cms ???

    PLEASE !!! ANYONE !?!?

  115. Liam McDermott

    Who is the user? Not sure I understand the requirement here

    Does the Portal understand who the user is so that it can provide customized content based on the need of the user? You said, yes.

    Can the user customize their own experience? Yes, to an extent, see above. Again, this should be better specified. What do you need?!

    Can users change the type content they see? Some people call them widgets. Like Yahoo or Google’s home pages. Can I as a user (not administrator, an end user) include custom content that may or may not be on my neighbor’s home page?

    Does the CMS part prevent users from entering “bad” code? What happens if a user pastes a Microsoft Word document as content? Yes, to the first part. I’ve never tried pasting content from an MS Word doc, the result would have as much to do with the browser, OS and word processor as the CMS however. I can assure you that Drupal is capable of filtering nasty stuff out.

    We’ve had problems with users who copy and paste content from MS Word. They’ve had to be told to first paste content into Notepad to get rid of Word’s formatting, then copy and paste into the CMS. Once in the CMS, reformat the content.

  116. I’ve used a number of the CMS/Engine systems mentioned above. I would definitely have to say it depends on the intended use. Arguements to the contrary Movable Type and Wordpress are not full fledged CMSes. They are engines/frameworks designed for blogging, which they quite well. Zope, Plone and OpenCMS lend themselves well to large enterprise/organizational sites. There is a while spectrum in between served by a large number of options, most of which have both bad and good points. For my own personal sites that are dynamic I use Textpattern.

  117. Can users change the type content they see? Some people call them widgets. Like Yahoo or Google’s home pages. Can I as a user (not administrator, an end user) include custom content that may or may not be on my neighbour’s home page?

    There are a number of modules that do this (aggregator in core), I’ve never used it though. It would come down to how finely grained the permissions for that module are. I believe the answer to this is yes, if not with the core module, then one of the third party modules from the Drupal.org site.

    We’ve had problems with users who copy and paste content from MS Word. They’ve had to be told to first paste content into Notepad to get rid of Word’s formatting, then copy and paste into the CMS. Once in the CMS, reformat the content.

    You’re not the only one. This is an important issue. At the moment Drupal does not come with a rich text editor built-in (version seven will), there are lots of rich text edit modules for Drupal available however.

    Without a rich text editor, paste from Word would just be formatted as plain text. Can’t speak for what all the contributed modules will do with content from Word: some would probably break, some would probably be fine, it would have to be tested.

    Sorry for being vague on these last points, Drupal probably does what’s required here, but having never done these things personally all I can do is point you in the right direction. :)

  118. I’d also recommend ExpressionEngine. It’s the most flexible that I’ve worked with from the design point of view and you can customize the admin interface according to your clients needs. For example, if you just want them to add or publish content and hide everything else, you can do that.

    Drupal is powerful, but I find it bloated. It has a lot of extra code that it adds in and in order to apply css, you have to overwrite the css it has with a new file. I also have a hard time with the admin interface. Every time I get in there I have to look in at least two places to find what I want.

    Textpattern is another good choice if you want complete control over your output and the admin interface is pretty simple as well. most likely it wouldn’t work well as a portal, but it’s very good for a basic site.

  119. I’ve worked some with both Joomla 1.0.x and 1.5. 1.5 is malleable and gives you control over the front end html. It’s easy to develop both the PHP and layout in other words. However the awesome amount of addons available for the 1.0.x versions can’t be used with 1.5. No don’t even think of using the legacy plugin to run them. So while I do recommend 1.5 the feeling you get from being able to choose among thousands of addons is gone.

    I can not recommend typo3, too clumsy. I also tried XOOPS which was a disaster, more than half of the modules I tested were broken.

    Hope that helps!

  120. I would like to recommend Textpattern. It gives you full control of the xhtml/css, implements web standards by nature, uses textile for formatting, and is easy to extend.

  121. For anything dynamic - get your head around ExpressionEngine and don’t look back…

    For brochureware, i use cmsmadesimple.org. Ugly site but fantastic little cms. Implementing to any UI is fast.

    With these two in your toolbelt, standards support is in your hands, not the cms developers.

  122. I have been using Textpattern for a few years now, it’s definitely the best thing out there.

    I have used it for all sorts of websites, from corporate to estate ones (they work a treat unlike one of the posters said), to e-commerce and anything else in between.

    Textpattern does have a few limitations, but overall it’s a great CMS and functionality can be easily built-in through plugins. For example, I have written a plugin which extends the 10 plugin limit to infinite: glzcustomfields . I am planning to take this plugin much further (check the forum thread), I just need to get past the current deadlines and projects which are taking all the time, even more than I wish to give them…

    Anyways Roger, have a look, I really don’t think there is a website that you couldn’t do in TXP (just because I have done anything possible & impossible), and the skins for the back-end are also popular and give TXP a different feel altogether.

  123. Another vote for MODx from me. I agree with many of the comments made about MODx above. I have tried a dozen CMS tools in my 10 years in the business - from open source to very expensive “enterprise solutions”. None has proved to be as easy and flexible and it has proved to have the power we need for the medium-sized business we build sites for. The community around this CMS and the API is pretty well documented. It is really more of a content management framework. There is a bit of a steep learning curve for the CMS users, but once they get it, they feel empowered.

  124. I’m a big fan of Expression Engine. As a software engineer(a.k.a control freak), I did weeks of research before choosing. I’m glad I did. It’s a mere $100 for the commercial version. That price is negligible in my book. Anyhow, good luck! Let us know what you end up choosing…

  125. Check MySource Matrix if you need a CMS for a large organisation. It runs some of the world’s largest intranet, web, e-commerce and publishing platforms..

  126. February 11, 2008 by Martin Gartner

    The latest Joomla version 1.5 has a very clean interface and gives you the possibility to fully override markup output in a very powerful and easy way.

  127. Great questions Roger, I’m excited to see what you decide.

    On my side projects I’ll typically stick with TextPattern, and at work we occasionally use WordPress (which I’m not too thrilled with, I think it’s better for smaller / personal sites; It’s not quite there professionally).

    I’ll add another vote for ExpressionEngine for larger professional sites.

  128. I would definitely recommend ExpressionEngine. I’ve used Drupal, WP, Joomla and none of them even come close to the ease of ExpressionEngine. It is definitely one of the most powerful and flexible systems.

    Take some time to watch the screencasts.

    WP is simple, for smaller sites, but I’d still rather use the free ExpressionEngine Core package because I can create the design any way I want.

    The reason I like ExpressionEngine so much is that it really works differently from most other CMS’s. It doesn’t force you to use their workflow, or layout code. You create that all yourself and then plugin the ExpressionEngine tags. As mentioned above, it is OpenSource, but not free if you want some of the other modules such as Pages, Photo Gallery, etc… It’s definitely worth the money if you can afford it.

  129. Just one more vote for SilverStripe. I am currently building my first site with it and it is just a JOY to work with, honestly, the first time I used a CMS that made me want to stay up til 5am working on it.

    Highly recommended.

  130. For little more than three years ago, we at Webbredaktören settled for Drupal after a thoroughly examination of 24 CMS:es, including Typo 3 and Mambo (later forked into Joomla!), which we selected from several hundreds listed at CMS Matrix. We choose Drupal for several reasons, of which the three most important was:

    • a fairly feature rich CMS with good security and many well-thought functions, e.g. taxonomy,
    • a very well written source code that make it easy to extend it as needed, and
    • a vigorous and very friendly community.

    Although we believed that we had chose the best open source CMS to base our business on, we constantly reevaluated our position in the beginning. After all, Mambo was much more popular (and Joomla! still is), Typo3 was definitely more advanced, and Plone was (and is) very beloved by its user community. And being a Java programmer, coming from the world of Digital Asset Management (DAM) systems, I of course took a close look at Alfresco, Magnolia and other promising solutions. But Drupal stand the tests, and today I am very happy that we chose Drupal.

    I also happy to see the enormous growth of users, modules and small and big companies and organizations supporting and/or using Drupal. Some examples of the latter includes: IBM, Sun, AOL, Yahoo!, Warner Bros., 20th Century Fox, Sony BMG, MTV, Greenpeace, Amnesty, UN, Novell, Harvard, Forbes, Die Zeit, Die Welt, IDG, Playboy, and more.

    You are of course also welcome to visit the web site of the Swedish Drupal community. And if you are interested in a demo or more information, I would be happy to stop by your office. (I am living in Göteborg.)

  131. As an addendum to Liam’s excellent answer to Tanny’s questions here are my experiences with Microsoft Word and Drupal.

    It seems that everyone that I deliver a site to writes their site content in Word. I generally use Tinymce as my rich text editor on Drupal sites that I develop. Tinymce comes with a “paste from word” button, but this is not a silver bullet. From my experience this widget mainly strips out word’s ugly html, but generally hiccups on nested lists, info tables, and anything else that is a little complicated.

    I don’t know if there is a good solution to the word problem. If you look at Microsoft’s underlying code structure its a mangled mess of tags that few mortals could understand.

  132. As a number of people have said above, I think Expression Engine is most flexible and is very easy to customise.

    I have been using it for awhile now and I find it does everything I need.

    Yes it does cost some money, but you get great support, large friendly community and something that works straight out of the box.

  133. February 13, 2008 by Illyria

    Hi, we evaluated Liferay Portal for an Enterprise Portal Project. So I hope I can help with some questions.

    How easy (or hard) is it to develop for?

    Developing portlets is comparatively easy for an experienced java programmer. However, I strongly discourage anyone from altering the Liferay core (not even for bugfixing). It’s very complex and you never know where you’ll wind up.

    How easy (or hard) is using them to create content and administer websites?

    Portals are application frameworks; they’re meant to aggregate webapps from different sources - but not really to display static content created at a single location. Though it is possible to create decent websites with Liferay (it includes Alfresco CMS), you wouldn’t want to go through all the hassle unless you need decent workflows for publishing content (which works quite well with the JBPM engine - once you’ve set it up ;-) ).

    Are there any problems creating fully standards compliant and accessible websites with either system? Do they allow full (and I really mean full) control of HTML, CSS, and JavaScript or do they contain uncustomisable black boxes?

    Yes, you can control all these aspects by creating custom templates with CSS and Velocity. I found that quite easy. The standard layout should be valid xhtml1.0 transitional. If you turn off layout personalisation for users (means they can’t order content in 2 or more columns as they like to anymore), you can get rid of the base table.

    BUT Liferay uses AJAX to generate and change portlet content dynamically. Without javascript, the whole thing is basically not usable.

    • Are their admin interfaces reasonably accessible? If not, can they be made accessible?

    see above

  134. Drupal 6 has been released by the way, have a look at what’s new: http://drupal.org/drupal-6.0

  135. I like MODx. It’s extensible up to medium-sized corporate sites. SharePoint/MOSS is interesting but much more effecient for large corporate sites (or, creating same-type subsites, e.g., individual rugby teams sites).

    I prototyped a medium-sized corporate site in MODx for design approval with the client; then handed off that site to a team of SharePoint developers and programmers for implementation.

    You do know - of course - that SharePoint will never be fully XHTML compliant.

    SharePoint master pages include the default DocType as “HTML 4.01/Transitional” but ASP.NET 2 defaults to XHTML 1.0. [That type of page will average about validation 150 errors per page.]

    SharePoint master pages with XHTML 1.0, I’ve reduced the error count per page to about 60.

    SharePoint 2007 has more documentation addressing issues and fixes these days than when released.

    I prefer MODx.

  136. I researched these ad-nauseum from the point of view of a front-end guy making small-biz sites. Here’s the quick summary:

    For the simple blog+ = Wordpress

    A step up, in terms of flexiblity: Textpattern

    The class of the bunch: Expression Engine

    Drupal is quite nice but a tad heavy-duty for what I needed. I consider EE to split the difference between Textpattern and Drupal.

    Modx has a ton of promise but seemed a bit rough around the edges documentation wise. Silverstripe looks great, I’m going to give that a whirl on an upcoming project.

    The smoothest client WYSIWYG experience I’ve had thus far was with Modx – it has a feature where you can view your page in the browser as usual (not from an admin backend) and it displays an editing toolbar. It is really slick.

  137. Even though I never met you in person, and I by no means deserve your complete, absolute, and unbridled trust, but if you want to keep your body and mind as close to intact as possible, trust me when I say stay the F@&# away from Liferay.

    For a Standardsista like yourself, Liferay would give you a heart attack. It adds a superfluous amount of div tags to every single element on your page, making a mess out of all the markup and CSS debugging techniques you’ve developed over the years.

    On top of that, it uses its own javascript for the admin interface that goes bonkers when you try to skin it (drag and drop especially).

    Drupal can be anything you want it to be. Really. I have experience with it and though I am no wiz php developer, I had an easy time setting up custom content thanks to modules like CCK. Whats the big difference between a Portal and a CMS anyway? Its all software… how you use it is up to you.

    But yeah… NO LIFERAY.

  138. I would definitly go for TYPO3 - www.typo3.org I have been working with drupal, wordpress and typo3 for a long time and wordpress = simple, drupal = fairly good but TYPO3= enterprise CMS system. There’s a steep learning curve though, but the new version will take away a lot of that and have even greater focus on usability.

    For developers its easy to develop extensions if you know your php - the system is endlessly extendable though an extension system, currently more than 3000 extension exist, so there’s gotta be one that covers something you need. Otherwise you just make one yourself. Extensions are installed through simple point ‘n’click, the bigger ones need to be setup through setup scripts. But, everything you want to have rendered in the frontend is controlled through templates, and you can makes as many as you like.

    TYPO3 creates fully w3 compliant webstandards html, you can add all the javescripts you want, meaning you can include javascript libraries like mootools, jQuery or lightbox to it with ease. Well, you decide the doctype for yourself, since the page-templates just have to be valid html for whatever doctype you declare in the html-document.

    See a working example of the backend at www.linkfactory.dk/demo

    Everything is customisable if you now your way around php.

    Typo3 has it’s own “language”, or more correctly, a sequenced command language, to additionally setup plugins, the cms itself, the backend, users and groups. This extends the systems further than what you can setup through just clicking of boxes on a form.

    I have used this system for 2 years and it’s becoming more and more widespread in Europe all the time. US is slowly catching on, but that’s more because it’s a cms from Denmark, which spread to Germany, and then really took of from there.

    The community around this is great and very friendly/helpful - on the danish and german newsgroup you usually get help within 10 minutes.

    It’s upwardly scalable, can handle everything from simple cms tasks, to document handling, LDAP logon, and much much more.

    This is a big cms, and maybe overkill for a very simple site

  139. February 14, 2008 by tzPickz

    I know what you mean Roger by Microsoft-dominated. I’ve been looking at the PHP stack by Zend core, and to go with that ExpressionEngine core to start. If you might be checking out EE then, I’ve got to recommend this print-on-demand instruction on a small business site setup for starters: www.train-ee.com

  140. I’ve been using joomla since the first glance. And it’s really easy to customize.

    Creating templates or just converting templates from fully css driven is just like counting 1, 2, 3 … zap .. (about a half hour actually until it’s ready to deploy :d) But I do curious with Modx, I’d like to try it someday.

  141. I have developed a test site with just about every major PHP based CMS out there. I also created almost 50 sites using Joomla and Drupal.

    For my money, Joomla gives me the best compromise with flexibility, ability to implement standards and accessibility and it fits most of my client’s needs. Is it perfect? not by a long shot, and it needs a certain amount of knowledge and experience to master. However, after 2 years of using the program for all kind of websites, I am familiar with changing the core code to be more accessible and I find the template system intuitive and very easy to master. It’s important that a CMS has a large user base and lots of third party add-ons and Joomla fits the bill perfectly. For version 1.0 there is an accessible version were the use of tables for layout has been reduced if not eliminated and version 1.5 has now an override system that overcomes having to change the core. In my experience, most negative reviews of CMS in regard to accessibility and ease of layout customization come from developers that have not taken the time to learn the system. There is a colleague that each site he makes tells me “I would have used Joomla, but I didn’t think I could make this layout work in it”. Invariably, I am able to implement the same layout rather easily.

    One of the issues I see all the time is inexperienced CMS developers introducing static elements, menus usually, in the dynamic template, making the system much harder to for the end user and making development a nightmare.

    Personally, I have been using CMS for even purely static websites, knowing that the client eventually is going to want to introduce dynamic features at some point. So far, I have never encountered a job where I wished I went “static”.

  142. ModX seems to be Textpattern on steroids. They use the same style of page generation system: direct access to the templates via xhtml/html and put in tags where you want your content to go.

    I’m tried a lot of CMS’s, and I keep coming back to Textpattern cause nothing else was as direct “to the metal” as txp

  143. i have used joomla a lot and think it is a pretty good system but it has so many workarounds on the backend to get it to build good html on front end that I try to steer clear of it. also I found trying to things like gallery systems and email subscribes is a nightmare and always ends up using another database to work properly.

    it is a great system for portal type sites with functionality linked to parts of the page and which page you are on, it comes from xoops base system i am pretty sure (which was a bit shit system I thought)

    it needs you to train people as backend is complicated for no real reason

    there is no user rights to articles e.g. only this bunch of users can edit this article

    it takes way too much hacking to get it to work

    have a look these sites to see what I got with joomla 1.0 to give decent code on front end

    www.filmworkshop.com www.mogwai.co.uk

    the new joomla 1.5 is out and it uses smarty layout engine I think, which allows for kinda whatever html on front end you need. dont go there on the backend and dont expect accessibility to be a priority with the developers, its new features and security that are important to them at the moment.

    if you ask me wordpress fits many functions really well. if you need anything more complex with custom database functions look at one of the other systems discussed above e.g. plone, drupal just dont expect quick understanding of those systems and basic config

  144. Hi. Another vote for SilverStripe from me too (though I’m a little biased myself).

    They’ve always been into web standards, accessability, etc for the admin area, and it lets you go wherever you want to for the front end.

    It’s easy to begin with, but with plenty of room to move if you want. I couldn’t recommend it more. Good luck choosing…

  145. Web site designers are more comfortable with MODx, so it seems. That’s apparently more compatible with our HTML and CSS skills. We need maximum design flexibility. We’re anxious to check it out.

    Our current experience has been mostly with more simple CMS systems to date. However, we’ve been getting more inquiries about Drupal, and a couple of outfits practically pleaded with us to help them with Drupal. It seems there is a shortage of skilled Drupal programmers, according to our sources. At least, that’s what we are hearing in San Diego. Some say it’s a good fit for social networking sites…but we focus on small to mid-size business sites.

    The posts on this topic have been AWESOME and it certainly suggests that this is a hot button for many.

  146. @Adrian Simmons

    Rather than running my own install, I like to check out the interface first. So having never used Drupal, I hopped over to their site.

    On their site, in the big orange/peachy box is a list of 8 links. One of them titled ‘Demo’. Yes, I agree it takes you away from the Drupal website to opensourcecms.com but it’s advertised as there demo and it crashes my web browser. So I won’t be putting in any more research into Drupal, petty I know but thats the way I roll.

    I think Wordpress is way in front of other CMS’/blogging software on offer, it’s open source and there is so much help available online it’s great.

  147. I can’t speak for the rest but I can give you an insight into problems I’ve run into with Drupal. Let me begin by saying that a lot of these may be improved in version 6. My experience is purely with creating various large, very bespoke sites in 5

    • There are black boxes where you won’t be able to modify code with out modifying modules and core code. Two things that are not advisable. A classic example I’ve hit time and time again is inconsistent handling of form submits. Sometimes you can theme them to use images, sometimes you can’t.

    • The client needs to have fairly technical staff to run the thing if their site is of any complexity. If you’re dealing with people who can’t code HTML don’t expect them to be able to maintain the site and keep it validating etc.

    • Overall, the admin interface is pretty awful. I was still getting lost in it months into a site build. It was admittedly a massive site with many many custom modules.

    • A problem I am sure is common to a lot of open source CMS - many of the modules I’d expect to be used in most sites seemed to be no longer maintained or buggy, with inactive / quiet support forums.

    I was pretty surprised to find so many problems and flaws with Drupal given the massive love you hear for it on drupal.org and elsewhere on the web. My suspicion is we had a pretty difficult site architecture and design to implement and it just ran up against Drupals weaknesses time and time again. I guess your mileage may vary.

  148. February 21, 2008 by Mike Sterle-Contala

    I have used Joomla! for two clients now, and I am very satisfied with it. A lot of research went into looking for an open-source CMS when the proposal went out to the first client, and Joomla! came out way ahead of the competition. It has the most active developers’ network, excellent plug-and-play add-ons for almost any scenario possible, and with a bit of PHP knowledge, it can be extended to do almost any task.

    Joomla’s major downside is its steep learning curve; I have spent over 500 hours on it and am still learning new aspects every day. It also puts out table-based content, although I have been able to tweak the source code to put out standards-compliant code without much trouble.

    Overall, I would recommend investigating your choices carefully, as learning how to use a good CMS is a major time investment, but with the right choice you will learn a skill set that will be useful in the future.

  149. I’d recommend to check Drupal and Joomla. I choose Joomla because of following reasons:

    • It’s faster. It can seem strange, but it is faster than Drupal and WordPress (you can find simple perfomance tests on my site)
    • It has bigger and more active community (see alexa ratings)
    • Non-tech people like learn Joomla’s backend more than Drupal’s.

    There is another very specific but still really good CMS — Typo3. I think it’s worth checking.

  150. Plone might be a bit disappointing for design and content integrators, but its rigid Zope objects framework and enforced separation between skin templates and functional scripts gives definitively a powerful tool for those who need to deploy many generic websites.

    You will definitively not become a Plone website integrator in 2 days, but it could be done in one week. Once your website functionalities fit to your needs, you will focus on CSS skinning and XHTML or javascript fine-tuning with no more efforts than usual.

    I’m testing often other CMS solutions and did not find till now a more confortable way to quickly produce full functional and multilingual websites quickly and safely.

    If you are sensitive to the respect of W3C standards, you will need to adjust some templates (e.g. empty tags), but it will not be to much work.

    Have a look to www.groovestreet.be : it is really a dream for the guitar shop owner to manage its content, and it was done with a half-day coaching, so don’t believe Plone is only good for huge organizations ! It is easy to learn if you have the good advisor.

  151. Drupal is a solid choice. Forget the “demo” — that’s running in a frame and doesn’t seem to demo much of anything.

    A great run-down of sites running Drupal can be seen here

    I personally did not find Joomla that flexible or Wordpress that powerful, but I know less about those systems.

  152. I prefer WordPress for simple sites and CakePHP framework for some bigger projects.

    However, I will have to develop one website with Drupal this month, so discussion is extremely intersting for me. It is good to know that many people consider it the best OpenSource choice…

  153. “I don’t know which frameworks are hot in the Java and .Net world.”

    I’m stuck in the .net world. We failed miserably at finding a CMS 5 years ago in .net land and finally built our own. 5 years later, we’ve spend 6 months trying to use SharePoints CMS features. OMG! RUN AWAY!

    So, back to square 1. The viable candidates (which is a VERY short list) for .net CMS systems at a reasonable price level are:

    Open Source: DotNetNuke (HUGE developer/user base.) Umbraco (Appears to be a content management framework, but I’m finding documentation a bit sparse)

    Affordable: Teligent’s Community Server and GrafittiCMS (both are very polished ‘Blog+’ systems)

    I think we’re going down the DDN route. Thanks for this conversation, though. I really want to start working with ‘one’ CMS outside of .net land and ModX looks like a good one to go with.

    Can a pseudo-.net-programmer manage to learn PHP via ModX?

  154. Whew! I finally made it through all the posts. Amazing discussion. This is great!

    As I mention in my previous post, I’m looking again at what’s out there.

    There’s a lot of agreement in this discussion it seems.

    I agree with the blanket statement that ‘most CMS sucks’. I think the genesis of that is that we tend to end up working with ‘enterprise CMS’ solutions. A lot of the time ‘enterprise’ is simply a synonym for ‘bloatware’.

    From all the recommendations in here, it appears that a big issue is the term CMS is just WAY to generic and still causes untold confusion in the marketplace.

    Sticking with the open source/free/really cheap side of things, it appears the options can be somewhat grouped:

    ‘enterprise’

    = large frameworks. tons of add-ons. Tends to take a chunk of work to get up and running. Has some of the more ‘power user’ feature like versioning, workflow, etc. * Joomla/Mambo * Drupal * Plone * DotNetNuke (for those of us stuck in .net) * Typo3

    ‘mid size’

    = what most people that get ‘enterprise’ CMS products actually need instead ;o) * ModX * TextPattern * Expression Engine * Symphony

    ‘blog engine +’

    = primarily blog-centric, but can be pushed beyond it’s limits for simple CMS use * WordPress * CommunityServer/Grafitti CMS (.net land)

    Anyone agree/disagree with that logical grouping?

    My interest is mainly in ‘mid size’ land trying to hit the 80/20 rule. Has anyone compared the products just within that grouping? Opinions? Any others I should add to the consideration list?

  155. (hmm…it does not appear that MarkDown syntax works as-advertised in these comment posts…apologies for the oddly formatted message above)

  156. Roger, I can’t help you with the powerhouse portal end of things. But as far as simplicity and user-friendliness, my testing indicates that it’s hard to beat a little app called Website Baker. http://www.websitebaker.org

    I like this CMS because I can easily copy and paste the PHP code into whatever HTML layout I create. It doesn’t have the huge library of plugins that Joomla has - but it’s also much more user-friendly and easier to template. And the necessary plugins and elements for a small CMS are there: group permissions, news/blog module, choice of WYSIWYG editors etc.

    My only concern with WB is that the upcoming version 3 is a ground-up revamp (requiring at least PHP5.2, and built on the Smarty templating engine), and as far as I’m concerned, the present iteration ain’t broke. At least the developer promises to continue with bug/security fixes of version 2.xx.

  157. Hi Roger,

    No - nada - cms matches umbraco when it comes to leaving your markup intact. umbraco doesn’t generate as much as a whitespace character by it self and it leaves your markup 100% intact - including whitespace. For a guy like you, umbraco should be a dream come true (only catch is that it’s microsoft based).

    But umbraco actually works 100% on a mac (and linux and even iPhone and ninentendo wii(!)).

    I’d be happy to spend a day with you and your team in Göteborg and show you how you can implement sites using umbraco on a mac - I’m on a mac myself(!). I’d also be happy to show you can easily create accessible admin interfaces for specific tasks in umbraco and I’d love to get input on how the backend of umbraco could be made more accessible.

    With the next release - 3.1 - we’ll finally have a fully standard compliant admin interface. Beta is coming end of March. It has been a long process taking all the legacy backend code and changing it (some of it was more than six years old). From there we finally have a much more clean and tightend backend code that let’s us work more on the accessibility.

    Give me a call if you’re interested - I am! Reach me via e-mail or on +45 70 26 11 62.

    Best, Niels…

  158. Regarding the issue with hosting costs on ms based vs. lamp based solutions, it’s only relevance on personal sites and (very) low budget solutions.

    When it comes to reliable, serious hosting the ms licensing costs (which is really cheap for isps btw) is very low compared to the other parameters required for 99.x% uptime.

    And even the most “expensive” hosting solutions usually costs less than one hour of European labour - that’s perspective imho. There can be a ton of great arguments for choosing lamp platforms, but hosting pricing shouldn’t really be one of them (unless you’re being a “web2.0” startup with a need to scale on a ton of servers).

    /n

  159. February 23, 2008 by Roger Johansson (Author comment)

    Niels:

    But umbraco actually works 100% on a mac (and linux and even iPhone and ninentendo wii(!)).

    Are you saying that with umbraco you don’t need Visual Studio to compile projects? If so, that does make it more interesting.

    But still, not being able to run a local environment on any platform is not what we’re looking for right now. LAMP/MAMP/WAMP solutions are much more attractive to an almost 50/50 Mac shop.

    I hear you loud and clear when you say that umbraco gives the developer full control, and that is excellent. The major drawback umbraco has is that it’s ASP.Net based. One of the other (commercial) CMSs we use is MS-based, so I really doubt that the open source system we choose will be too. We want to be able to offer a non-Microsoft option.

  160. @Roger: Yes - umbraco is different. umbraco uses XSLT for all content transitions (you can use .net code as well if you like, but why would you?). All XSLTs exists on filelevel and can be edited in your favourite editor of choice or via the umbraco admin interface. Everything else it editble within the browser as well - umbraco is not like EpiServer or Sitecore. Or DNA is web, not MS ;-)

    So even though you have your doubts, let’s meet again in Göteborg :)

  161. February 24, 2008 by Roger Johansson (Author comment)

    Niels:

    umbraco uses XSLT for all content transitions (you can use .net code as well if you like, but why would you?)

    Ah, nice. And yes, why use .net code when you don’t have to :-).

    There is still the issue of having to run IIS though… I’ll talk to my colleagues and hear what they think.

  162. Textpattern is a good choice for small-mid sites. Very light with a small learning curve and flexible enough to expand beyond brochureware.

    It has recently been forked by some of the community, with the aim of addressing some of txp’s weaknesses, and involving the community more (discussion here).

    Drupal could easily run a portal site meeting all the requirements outlined previously. IBM has a tutorial showing how. It’s a good choice for community driven sites. However, it has a steep learning curve, getting the right markup takes a lot of experience with the theming system (as of v5).

  163. @Roger: I’ll probably regret this, but if you’re interested in umbraco I’ll make it run on mono (= you can run it on you mac without IIS). With 3.1 we’ll support mysql out of the box, so it shouldn’t be a biggie.

    Deal?

    /n

  164. as a .netter, I’ve been looking at Umbraco. Alas, It’s a bit hard to wrap my head around it from the ‘sales brochure’ standpoint. It appears to be more of a framework, correct? And that one uses to create their own back-end interfaces?

  165. CMS seem to be required these days due to the fact that the “building” of the sites is so achaic. First you mock it up in Dreamweaver, or Expressionweb or other, then you build the backend infrastructure and implement, then you have to MAP a CMS on top of it. But, even after all that if you fundamentally change the site you have to remap the whole thing again!! Ive been looking at new systems where the CMS or Website management tool is part of the build platform so you dont have to worry about backend or CMS. Its included….I think a lot of people are trying to get into this through a Saas(software as as service) offering…Sitemasher being one of them but, they dont go live till spring. Ive had a look at their Alpha and its heading in the right direction.

  166. I have tried Joomla as well as WordPress for a basic CMS for my clients. I was curious to try Drupal, but many of my associates say it is hard to implement, so I am very reluctant to learn yet another platform that is Opensource.

    I have yet to find the perfect CMS, and looked at many demos. One that may have promise is Sitemasher (www.sitemasher.com -it’s in Alpha)- I signed up for the Alpha release, they are trying to fill the void of being an easy integration tool and a true CMS (with content versioning, expiration, & easy customization).

  167. Those sitemasher posts smell strongly of SPAM.

  168. All of CMS mentioned here , 90% of them pass by my mac on tryout. Lots of time and pain :)

    *POINT**

    1. Stable / Secure.

    2. USER FRIENDLY [ CLIENT ] : not Developer or Just DESIGNER (as me probably).

    3. Can Handle High Traffic [ what for if not? ] and is FAST.

    4. Include : forum, blog, wiki, shop…. and advertising & media management.

    5. MULTISITE management.

    **///**

    PLONE : forget - to many to do to get site on. Top to look at but : even Akamai is slow on it, now old site is back, correct me if im wrong. all 5 points YES. but far user friendly to manage site and slow.

    JOOMLA! : forget - it scares me out to see something like 3000? extensions. There is many high traffic sites running on, include Mambo,,,but it is pain to manage.

    DRUPAL : hmm… Never get into, and try several times…!!! v.6 have some issues, not ready yet. as ex. [ http://drupal.org/node/224133 ]

    MODX : is promising for a while ! Great but, no offense for developers REALLY 0.9.7 is coming for what 6 month now ?

    EXPONENT CMS : has simply something about ! Same as MODX, coming soon 0.97 : about 6 month.

    From all, PLONE stick to the time schedule and gets more and more complex.

    At this moment Jan08’ No one of them meet my needs. And Life should by SIMPLE.

    ( bdw. im looking for dedicated box in stockholm… any advice? )

  169. February 27, 2008 by Roger Johansson (Author comment)

    Niels:

    I’ll probably regret this, but if you’re interested in umbraco I’ll make it run on mono (= you can run it on you mac without IIS).

    I’m not that familiar with mono, but it does sound interesting. I still think we’d prefer something AMP based, but I’ll talk it over with my colleagues.

  170. With umbraco on mono you can have LAM, but not the P (which is Perl, Python, Php). Mono makes it possible to run .NET under apache on linux (or OS X).

    So even though umbraco would be .NET you could run it natively on OS X, with MySql and no need to open visual Studio (infact we even support Python, so can have the LAMP stack ;-)). That is of course if we make umbraco mono compatible, but I’ve just run the test and it’s so minor things we need to update that I’ll spend the time if you give me a chance to demo umbraco in Göteborg for you and your colleagues.

    And yes, I’m extremely stubborn - but I’m SO damn convinced that RJ and umbraco is a perfect match (haven’t I been trying to convince you in nearly three years now ;-))

    /n

  171. @Darrel: Come back in two weeks where we have intro videos up and running. Our week point have been documentation, but during March we’ll finally open our documentation site with over 40 video tutorials.

    Once you’ve learned umbraco you can implement a website in hours. But we’ve really been (stupidly) bad on the documentation site, meaning that if people didn’t immedially understood the philosophy behind umbraco, there was no where it could be explained. That’s also why you’ll usually meet people who says that umbraco is the best thing they’ve even seen while others say it sucks big time.

    Hopefully things will change the next few weeks - so Darrel, shoot me an email if you want beta access to the videos (nh AT umbraco . dk).

    /n

  172. February 27, 2008 by Patrick

    A good CMS/Portal that is beginning to take on a lot of interest is Xaraya. It’s a re-write of PostNuke or PHPNuke, however they are actually using standards! Xaraya will be soon releasing 2.0, but it already has a ton of add-on modules and even some SSO modules. However, after reading the above posts, I think I’ll take Modx and Silverstripe out for a spin.

  173. Niels:

    I’ll eagerly keep an eye on the site. I look forward to seeing it in action! An email is on its way…

    Patrick…I was actually going to pop back in here and ask about the *nuke options. Being stuck in .net land we’ve been looking at DotNetNuke and its history and realized that I recalled Post/PHP-Nuke being on the radar many years ago but not so much these days.

  174. A long read to the bottom, but worth it. A lot of experience represented here.

    Working full time as a developer making sites for clients, and supporting Web Standards, I have yet to find anything that comes close to Expression Engine. Over two years working with it and it still amazes me with both ease of use and features, yet simple and easy to use.

    A member management system that reminds me of an office network, and an open editable templating system makes it a winner. I can add anything to an empty template and publish it.

    250.00 is nothing compared to the time saved in development.

  175. I got quite frustrated oscillating between drupal and WordPress to install on client sites. drupal was powerful, but it was painful to use, and training my clients was never fun. WordPress is much more friendly for the client (at least until you start explaining how to work with all the plugins and hacks you used), but the template language sucks (there is none) and it was never meant to manage much more than a blog.

    Then I found Expanse. It was gloriously simple to use, had a brilliant template language and theme structure, and nicely-separated content modules (gallery, blog, links, pages, etc.).

    Expanse has been discontinued, but I’ve resurrected it as a free open-source project named dreamscape.

    dreamscape is a bit of a niche player in the CMS world, but that’s a good thing. It doesn’t try to be all things to all people (drupal or modX), or just one thing (WordPress, Glue, etc.). It aims to fill the needs of someone who needs a site with a gallery or two, perhaps a portfolio, a blog, a mailing list, and a few whatnots. And it aims to do this with an admin interface that a normal human client can easily understand.

    dreamscape outputs no HTML of its own, everything is controlled by your templates, even the RSS and Atom feeds. It’s as standards-compliant as you want it to be.

    dreamscape is nearing an official 1.0 release. Until then, please feel free to download a beta from the Google Code project page, either a package or the latest SVN source.

    Please let me know if you’d like more information about dreamscape, or if I can help you with it at all.

    Cheers! {ryan}

  176. March 3, 2008 by Mark

    My thoughts on the systems we currently use:

    MODx

    Advantages: * full control of output via templates, templating logic via PHx * client-friendly WYSIWYG content editing (clients are blown away by Quickedit inline editing) * custom fields (TVs) and widgets * fully integrated file/image/resource management * hugely extensible via snippets, modules and plugins * great community * 0.97 release with new xPDO core and Contexts promises to be truly ground breaking. Disadvantages (as of 0.96 release): * no native multilingual support * no native forum, wiki or newsletter management * no extensible e-commerce solution (sorry FoxyCart, Treasurechest etc but these solutions just aren’t enough for many typical stores).

    Drupal

    Advantages: * mature project with huge number of modules * brilliant api hooks, hugely extensible * theming uses the clunky blocks model but is nevertheless highly flexible * CCK + VIEWS to create, present and manage your custom content. * great e-commerce in the form of Ubercart. Disadvantages (Druapl 5.x) * confusing, clunky admin. Clients typically hate it. * no integrated WYSIWYG or file/resource management (I know there are modules, but they are not integrated: image management in particular is a nightmare). * really memory hungry (with modules), can struggle on typical shared hosting.

    Expression Engine

    Advantages: * great flexible templating * custom fields * nice simple and accessible admin with WYSIWYG editing modules as an option * native forum, wiki and e-commerce modules (although the latter is not really any use for anything but simple stores). * Easily extensible * Excellent documentation * EE 2 built on top of Codeignitor promises to be the swiss army knife that everyone seems to be after. Disadvantages (EE 1.6x): * you need to buy a licence for every site you make with it * you will need buy the Tiny MCE image and file manager as EE doesn’t have proper integrated image/file management. * Far easier than Drupal but harder than MODx to build custom functionality.

  177. Any chance of an update? Even if you haven’t made the final decision yet it would be good to hear where you’re at.

  178. March 13, 2008 by Roger Johansson (Author comment)

    Tom: No final decision yet, but after trying out several of the options mentioned here SilverStripe is looking good.

  179. I’ve been developing in Xaraya for about three years now. I’ve always liked it. I think I stared with version .91 or something like that, but it’s a strong CMS if you know PHP.

  180. March 14, 2008 by Mark

    Hmm coming to the same conclusion myself after playing with Silverstripe for a few days. A client-friendly content manager built on top of true PHP5 application development framework, with unlimited flexibility in templating, and the sweetest integrated file/image management I’ve seen in a CMS. I may have to lie down…

  181. I recommend you trying WebAPP CMS, an open source, multilingual perl portal from: http://www.web-app.net/cgi-bin/index.cgi

    It has been around for many years which makes it safer, versatile, and not to forget the fantastic 24/7 supporting community.

    Saul www.web-app.net The best open source Perl CMS

Comments are disabled for this post (read why), but if you have spotted an error or have additional info that you think should be in this post, feel free to contact me.