Slashdot Log In
How To Choose An Open Source CMS
Posted by
ScuttleMonkey
on Wed Jan 25, 2006 08:56 AM
from the focus-on-the-problem dept.
from the focus-on-the-problem dept.
An anonymous reader writes "Content management specialist Seth Gottlieb has written an easy to understand how-to on selecting an open source CMS. Gottlieb is also responsible for the whitepaper 'Content Management Problems and Open Source Solutions' which summarizes 15 open source projects and distinguishes between open source CMS and proprietary software selection."
This discussion has been archived.
No new comments can be posted.
How To Choose An Open Source CMS
|
Log In/Create an Account
| Top
| 191 comments
| Search Discussion
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Hm, an OpenSource CMS? (Score:5, Informative)
Re:Hm, an OpenSource CMS? (Score:5, Informative)
If you know in advance you must be using PHP, and you're not sure whether you want a portal, CMS, weblog, etc, then this is a good site.
However, if you have other languages in mind, or are open to a good CMS in any language, you should check other sources. One good reference site is CMS Matrix [cmsmatrix.org]. Another good source of CMS information is CMS Watch [cmswatch.com]; even though it concentrates on the entire spectrum of CMS systems (including commercial ones) it occasionally has very good articles or pointers to articles about open source products (like this one [blogspot.com] which I just found).
Best CMS (Score:5, Funny)
Killer features (Score:4, Informative)
(http://slashgeo.org/ | Last Journal: Wednesday October 17, @09:03AM)
Different CMS shares a lot of features, but some features are unique from one to another and might influence your choice...
Many good points (Score:1, Redundant)
Trial and Error (Score:5, Insightful)
(http://www.lazylightning.org/)
I settled on Drupal only because it was the "hot thing" at the time and I enjoyed the fact that you could put php code into "blocks" and have it run custom code w/o much hassle. At the time I wasn't all that much interested in working on the actual code so the "blocks" allowed me to get some of my bash shell scripts onto the site w/o doing too much hacking.
Drupal for me too! (Score:4, Informative)
(http://www.wifimaps.com/ | Last Journal: Saturday June 19 2004, @09:58PM)
Druapl is also very configurable, even without having to write any code at all. It is all done with PHP, Apache, MySQL, which most GNU/Linux distributions seem to have already on the distribution media. Install your favorite distro, and Drupal fits in quite nicely.
CMSes are going the way of the dodo.. (Score:3, Insightful)
Etomite (Score:2, Interesting)
(http://www.intellipool.se/ | Last Journal: Wednesday January 31 2007, @03:49PM)
Good points so far:
- Simple to setup
- Easy to develop templates for, our template (http://www.intellipool.se/ [intellipool.se] took a work day to put together.
- The back end is easy to use and provides nice editing features directly in the browser.
Drawback:
- If you are looking for something that can do "everything" and be extended left and right, Etomite is not for you.
www.etomite.org
Tech Support. (Score:2, Informative)
Structure (Score:5, Interesting)
(http://www.vanderlee.com/)
There are other choices that can quickly filter CMS's, but many of the choices have alternatives or can be hacked around. Only rarely will you find a CMS that can handle both navigation structures.
Too Many (Score:4, Interesting)
Non open-source CMS no good ? (Score:1)
Then again, it really depends on the demographic. If it's a student putting up a website and he has all the time in the world, I guess an open source CMS is the preferred solution.
Of course, I'm biased, I work for this [jahia.org] CMS vendor
Drupal gets my vote (Score:2, Interesting)
www.OpenSourceCMS.com invaluable (Score:3, Informative)
(http://jimstips.com/)
http://www.opensourcecms.com/ [opensourcecms.com] works as a nice Sandbox environment that auto-refreshes every hour or so (ie: each CMS is automatically reset to a clean install, so though you lose anything you try out, you can't mess things up.)
It's a great way to get an initial feel for various CMS's in one tight place.
-Jim
http://gmailtips.com/ [gmailtips.com]
CMS is less important than people (Score:4, Insightful)
(http://austin.rug.googlepages.com/ | Last Journal: Wednesday November 02 2005, @05:03PM)
That being said, I like a comercial solution: ClearCase, (paired with ClearQuest) as it allows me to enforce a certain percentage of behavior through the tool. And when you have people who feel it's their duty to violate process because it "won't work" (they didn't write it) it's nice to have the tool lock them down.
Zope-Based CMS Products (Score:4, Informative)
(http://feneric.blogspot.com/)
There's been an ongoing discussion about this same topic over at Macintouch [macintouch.com].
Personally I'm a fan of the Zope [zope.org] / CMF [zope.org] series of content management systems; the built-in CMF is quite powerful and flexible (and actually fairly efficient -- don't be fooled by the slowness of some CMSs built on top).
There are many such systems. There are some in private use (like Boston.com [boston.com] and Saugus.net [saugus.net]. There are also some commercial options (like Icoya [icoya.com]). Most though are free and open source, like Plone [plone.org], Infrae Silva [infrae.com], and Nuxeo CPS [cps-project.org]. Each has its own focus and tends to do certain things better than the others. Each has its own special plug-ins and extensions, but since they all utilize the same underlying base framework, it's usually a doable thing (although typically not trivial) to port a product from one to another.
The capabilities of Zope's built-in CMF are also good enough that it's not at all unreasonable to fashion one's own CMS on top of it if none of the existing products seem to suit one's own particular needs.
For Java Freaks (Score:4, Informative)
http://java-source.net/open-source/content-managm
Open Source on MS Platform (Score:1)
(http://chrishammond.com/)
cms (Score:1)
CMS Made Simple (Score:2, Interesting)
(http://www.paulandmichelle.net/)
PHPwcms is excellent (Score:2, Interesting)
That said what CMS you choose - open source or otherwise - is entirely predicated on the project. Got a community site? Take a look at Drupal or Mambo, maybe something smaller if it works. Need a small content site? Check out PHPwcms, CMS Made Simple, or LucidCMS. Someone else mentioned Etomite, but Etomite is quirky, visually unsophisticated (the admin tool looks a little garbagy), and lacks some of the flexibility provided by other tools.
PHPwcms' management of content as small objects that can be easily called or reused in secondary locations (allowing you to have a repository of "global" content was a huge argument in favor of it for my project. Its only major weakness is the lack of robust entitlement capabilities... its been on the books for a year, but no one has developed it further... you can only set-up an all Admins or vry weak content administrators (who can't edit content).
-rt
My Plug For Geeklog (Score:3, Informative)
(http://graymerica.com/)
I use is for the base of many commercial web sites, utilizing the WYSISYG (FCKeditor) page editor and the news manager. It provides an excellent frame work for developing sites on top of, especially if you need a basic website with some extras thrown in.
It also runs sites such as http://www.groklaw.net/ [groklaw.net] and http://worldmusiccentral.org/ [worldmusiccentral.org]
By changing the templates or config to eliminate links to the parts you do not need, (example, links pages, polls, etc), you can use the user login, edit, and admin parts to allow your web clients to edit their own pages, saving you the trouble and saving them money in the long run. The templates are completely separate from the code, allowing you to design graphics for the site separate from the code.
Updates are pretty easy if you keep your custom code out of the main install, a process that is pretty easy if you put your code in lib-custom.php. The code is well written and clear enough for a person with basic php knowledge to hack if they like
The software is all php/mysql and run efficiently on most linux shared hosts. There are also a wide variety of plugins.
The forum and developers are responsive to support requests.
just my two cents from a fan of geeklog,
it is also available for demo at http://opensourcecms.com/ [opensourcecms.com]
"Best" (Score:5, Insightful)
Here are some things that greatly helped me:
There is NO awesome templating system. If you have web designers and you have programmers, don't expect something to drop into place with little hassle. We have been deploying html + mod_perl applications using a simple in-house templating system. This is actually elegantly simple compared to some of the systems I looked at. It's all very relative to the staff you have. Personally a JSP taglib solution works best for us (so far)
There is no one "best" system. People claiming X or Y is clearly superior are either not deploying CMS for a group of users, lack experience as a developer/designer/user, or are just crazy. I know of a Major Company(tm) who management told to the developers use X system for some inscrutable reason after reviewing a lead dev's evaluation list. While on paper X is great, there are a few very annoying problems for the template designers, and they don't have the mandate to go modify the code, which is open.
Part of the evaluation MUST include every level of person using the product. Developers,designers,managment (reports n such), and end users (archetypal secretaries). I tried to let people know what was happening a few times a week with my evaluations, keeping a blog would be great maybe. Other people accepting your choice is super-duper-key. I got some great feedback from docs on a few occasions that helped me steer my choice.
Get a clear set of requirements and wish list items established early on. CMS systems can be minimal or very very comprehensive, it's easy to get lost in nth's implementation of webDAV or whatever.
Blog systems may have elements of CMS in them, but are not (usually) full blown CMS systems. CMSmatrix.org and other great places for data lump all the products together. In my opinion there are about a dozen open source products that are clearly way beyond the blog.
Last piece of advice which you won't hear very often: if you think you may not need a CMS solution you probably don't! If you have a single site, with some updating you need to do frequently or maybe you want to have a team of designers working on it, check out subversion first and maybe that alone will give you enough of what you want. If you just need templating check out apache's tapestry or cocoon projects.
Go Native among the Users (Score:5, Insightful)
(http://www.karljones.com/ | Last Journal: Thursday November 13 2003, @02:33PM)
This is so true. End user input is critical, they will make or break the project.
My dad (rest his soul) was lead programmer (maybe the only programmer, I dunno) for the Star Tribune newspaper, back in the seventies. I was a teenager at the time, he taught me about For-Next loops and so on. Along with the coding, he emphasized:
The smart programmer
(a) Listens and nods his head while Management says "We want this, We want that"
(b) Sits down with end users (secretaries, etc.) for a while, every day, staying out of their way but watching them work, and asking the occasional question;
(c) Figures out what the end users really want, need, will accept;
(d) Codes for the end user, then spins the thing so Management thinks they're getting what they (foolishly) asked for.
Dad called this "going native among the users" (he took his degree in anthropology).
-kgj
The only perfect CMS (Score:2, Insightful)
DotNetNuke (Score:2)
WordPress+LightPress (Score:1)
(http://www.imobis.ro/)
- easy to install
- easy to administer
- clean
- faster then Drupal, Serendipity, TextPattern,
- php+mysql based
http://wordpress.org/ [wordpress.org]
http://lightpress.org/ [lightpress.org]
Determine Criteria Before Selecting Tool. (Score:5, Informative)
(http://slashdot.org/)
A few starter questions:
1. What content do I have or expect to have? (web pages? documents? discussion forums? image galleries?)
2. Where does this content come from? (departments? users? myself? Internet sources? databases? third-party apps?)
3. How should the system manage this content? (workflows? editors? fine-grained access control?)
4. How should this content be displayed? (xhtml/css? pdf? print/paper? cell phones? xml? rss?)
5. How much separation of content and design do you require?
6. How extensible should the CMS be? (in-house development? modular? out-sourced development? completely opensource?)
7. What are the administrative requirements? (*nix? mysql/postgresql? apache? php? python?)
8. What is the anticipated load and can the CMS manage that? (quite different from a 5,000 hits/day site vs 20,000,000 hits/day)
9. What is the estimated lifetime of the website? What changes to the site are forseeable and should be considered?
Assuming your doing something more than a personal blog site, most likely pre-existing workflow processes and organizational resources already exist and those should be analyzed when making a CMS choice.
Don't get overly focused on initial setup times. The cost of administration, development and resources will far outweigh the initial setup costs on all but the smallest of sites.
Content Management (Score:2)
Most Open Source CMSs aren't much more than blogs or forums on steroids. Very few deal with real content management problems. I still haven't found one that I'm crazy about. I'm trying to work with Apache Lenya [apache.org] right now but it takes a lot of work. Zope/Plone is similar. The power is there for both of them but the initial learning curve is steep.
Oh, and my biggest pet peeve for any CMS site (or any site) is unreadable URLs. It's OK for some applications but for a site where people will be returning to the same page frequently, it should have a sane URL.
Not very in depth (Score:2)
(http://www.putfwd.com/ | Last Journal: Tuesday November 23 2004, @01:50AM)
There's also a lot of difference between types of CMS, from blog-level packages to easy site builders and Mambo/Joomla-esque packages which are missing any real enterprise-ready features such as versioning, workflow, and fine-grained access control (more advanced than Unix permissions please!), to mid-level packages which vary greatly within themselves as to their focus (marketing/SEO, publishing, or traditional content/document management), to high-end enterprise packages. There's also a big difference between a CMS that includes a content server/content publisher and one that doesn't. An easy comparison of these in the open source world would be Midgard vs any of the Midgard-based CMS packages. The no-content-server packages are more flexible, but require a lot more implementation effort as well.
Really, it comes down to defining your goals. And often people find that some commercial CMS still solves them better than the open source ones, while many find the opposite to be true. Different goals. (note: I'm the lead developer for the open source Sitellite CMS [sitellite.org] that also has a commercial counterpart -- dual-licensed).
A few articles I found interesting related to CMS selection:
Tire Kicking and CMS Shopping [econtentmag.com]
Will your chosen CMS vendor go bust? [steptwo.com.au]
ZDnet.au (Score:2)
(http://news.google.com/)
It's interesting that the Australian publication has so much Open Source coverage.
Speed? Scalability? (Score:1)
(http://www.fazed.org/)
I'm sure some of that can be fixed with better programming and design, but is that happening with the free, modern CMS?
chucking the lot (Score:4, Informative)
(Last Journal: Monday February 04 2002, @03:31PM)
Here's the logic:
1. A very basic site (read: a blog) with a very basic CMS is generally not hard to set up.
2. The technical issue: as sites get more complicated, the level of sophistication required by the user to install and maintain them increases. (In the extreme case, I submit Xaraya [xaraya.org], a CMS so complicated that trying to create a site as simple as "I just want a page with our contact information on it!" becomes an exercise capable of inducing intra-cranial hemmorage). Additionally, any templating system required grows more and more arcane, until it is essentially indistingushable from the actual programming language in which it's written.For example: the easiest way of getting a Drupal [drupal.org] site laid out and usable quickly is to use the PHPTemplate plugin - in other words, to just write PHP code. David Heinemeier Hansson, no stranger to controversy, went a step further than this and labeled general-purpose CMSes "pipe dreams," [loudthinking.com] and said "I believe the time has come to mark a date in the not too distant future for celebrating the death of the general-purpose content management system." (Not like he doesn't have his own thing to push [rubyonrails.com], but that's as may be. See also Jeff Veen's frustration with open source CMSes [veen.com]
3. The social issue: as the content management system grows more and more complicated, they become more and more intractable for the average end user. Responsibility for day to day site updates is pushed to the IT department, which is absolutely not where it belongs. (Once again, I give you the one, the only, Jeffrey Veen [adaptivepath.com].)
Architecture, environment and use... (Score:1)
(http://www.arctechnologygroup.com/)
How about static content (Score:1)
(Last Journal: Tuesday March 23 2004, @12:17PM)
An engine that could manage dynamic content and incorporate static content (parsing it, embedding it, styling it, whatever) would be perfect. But I haven't found such a package. Anybody who has waded through the hundreds of free CMSs and found this featureset, do tell.
CMSes suck, universally (Score:2)
(http://gondwanaland.com/mlog/ | Last Journal: Wednesday January 26 2005, @07:17PM)
If you're a special person that believes pain is necessary by all means use a full-fledged CMS for your site.
Good multilingual support? (Score:2)
(http://namakajiri.net/)
* UTF-8 everywhere.
* Templates/autogenerated strings are i18nable.
* Able to i18n all user-created content. System understands the relationship between alternative versions of posts, etc.
* Able to choose default language through HTTP content negotiation (get the browser's default).
* Able to override browser default with cookies.
* System use nice, strict XHTML and mark all multilingual content with the proper xml:lang attribute.
Am I the only one who cares about that?
CMS in packages (Score:1)
(http://perdichizzi.com.ar/)
Trying not to have to write my own! (Score:1)
(http://the-jedi.co.uk/)
I've written a basic CMS in a previous job, and am patching this one, the hardest part is constantly modifying it to dumb it down further and further for the users whilst still making it useful.
I really don't want to have to re-invent the wheel again, so have been looking at various offerings, both commercial and FOSS.
I'd personally prefer a Perl/Python/Linux/Solaris solution, but there are AD/NTLM requirements, Exchange integration, database portability - currently MySQL will do, but we're going to need to move to Oracle eventually in keeping with company policy; and it's looking like the commercial ASP/Windows solutions are the only choice.
The main problem I'm having at the moment is what do you do if you want to add functionality? The commercial vendors all say 'just develop your own website in a frame of the portal', which is all very well and good unless you need to be able to integrate the search and permissions systems and don't want to have 2-3 servers.
Not many vendors have an API or even Web Services kind of system, it's all some
With the FOSS model, at least you get the source and have a nice language - they're generally Python/PHP/MySQL, not JavaBeans/ASP/Access rubbish.
What I need is:
Platform: Solaris+Apache
Language: Perl/Python/PHP
Database: MySQL+Oracle
Authentication: NTLM/ActiveDirectory single-signon
Extensibility: hack the source/a nice API or wrapper system/web services
Integration: RSS syndication, Exchange calendar+addressbook
Zope/Plone, PostNuke, BEA, Drupal etc. do not even come close.
phpWebSite ... my pick. (Score:1)
(http://www.kevindawson.ca/ | Last Journal: Saturday October 22 2005, @10:39AM)
http://phpwebsite.appstate.edu/ [appstate.edu]
CPGNuke (Score:1)
(http://forum.arbuz.com/ | Last Journal: Monday September 27 2004, @09:12PM)
Seven Criteria for Evaluating Open-Source Content (Score:2, Informative)
Another article on this topic:
Linux Journal: Seven Criteria for Evaluating Open-Source Content Management Systems [linuxjournal.com]
Geeklog! (Score:2)
(http://slashdot.org/~rat7307)
When setting up my geocaching website [cachegurus.com] I evaluated about 10 CMS systems, including Drupal, phpWebSite, Geeklog, Joomla, Mambo, PHP-Nuke, phpWCMS, phpWebSite, Post-Nuke, Siteframe, TYPO3 & Xoops.
In the end I found that Geeklog was the one with the most intuitive (to me) templating system and was the easiest to add your own code to. I found that most CMS systems are great out-of-the box solutions for doing what THEY want you to do, but adding custom modules and functionality is a nightmare!!
I wasn't expecting geeklog to be as good as it was!
Sheesh, I sound like a fanboi...sorry!!
Alfesco (Score:1)
(Last Journal: Friday December 09 2005, @12:09AM)
Re:Dokuwiki ! (Score:4, Insightful)
How to install SomeProject - This article is a stub, but you can help by writing it!
No thanks.
Re:Avoid PHP for Web-accessible CMS installations. (Score:3, Insightful)
Security is a function of the developer, not the language. To be sure, some languages have inherent security features that can help, but if you honestly think it's that much more difficult to muck up a Perl program than a PHP program, I've got some land near Baghdad you might be interested in purchasing.
Re:Avoid PHP for Web-accessible CMS installations. (Score:1)
I have had to argue this point for months with the CIO/CEO of my company, who were under the same impression. They had the idea in their heads that PHP caused all kinds of havoc, from security issues, to search engine optimisation issues, etc.
Eventually I convinced them that its all in how a language is implemented, how the code is written, and how various requests and such are handled.
The vast majority of PHP-related security vulnerabilities are the result of a variable that was either deprecated, but never removed from the code, or just a check variable that the developers never thought anyone would find and abuse.
The bottom line is, whenever you deal with any kind of external data coming into your program, in PHP, C++, Java, VB, or anything else, if you do not check the sanity of that data coming in, you will have serious problems.
Use whatever programming language you like, just remember to SANITIZE ALL USER DATA/QUERY DATA before processing!
Re:Avoid PHP for Web-accessible CMS installations. (Score:5, Insightful)
(http://slashdot.org/)
So basically, you have some well-intentioned but not experienced person with a good idea, and they sit down and hack together an application while learning PHP at the same time. Do they even know the definition of "SQL Injection Vulnerability" - probably not.
And a lot of the issues that I see on places like bugtraq are application specific, and I usually haven't even heard of the app. "The PHP app, Lyrus Extreme version 3.2 has a remote exploit." In your head, you subconsciously tally that up as "one more PHP problem" and if someone is gathering statistics on PHP problems by searching bugtraq for the string PHP, this one will be counted. But really, it's not a PHP problem, it's just an amateur programmer.
Re:Avoid PHP for Web-accessible CMS installations. (Score:1)
(http://www.zoumas-it.com/)
Re:Avoid PHP for Web-accessible CMS installations. (Score:1)
Sorry to see that you've been rated as a troll (16:11 GMT, 25th Jan 2006) You make a very reasonable point. Those who think they smell bullshit could do worse than read about mysql_real_escape_string() versus Prepared Statements [ilia.ws], The addslashes() Versus mysql_real_escape_string() Debate [shiflett.org] and PHP Insecurity: Failure of Leadership [greebo.net]. That said, I like using PHP. That said, I dread to think about the security state of my code...
The last article listed above contains this quote:
"For some time, I've been worried about the direction of PHP. As many of you know, I helped write XMB Forum and now help write UltimaBB. XMB in particular is an old code base, and UltimaBB, a descendant from XMB. I've done a lot to protect that code base from attack, and luckily, we've been missed despite some doozy and silly security issues. After writing PHP forum software for three years now, I've come to the conclusion that it is basically impossible for normal programmers to write secure PHP code. It takes far too much effort."
Re:Avoid PHP programmers for CMS (Score:2, Insightful)
(http://www.rattus.net/~packrat)
While PHP is a truly awful language that strives against every programming principle and the very act of writingin maintainable code, the problem is not the language.
The problem is the sort of people that PHP as a language was designed for. It was designed for non-programmers and kids to easily hack together vaguely working web applications for pocket money or sweets. It excels at this, cast your eye around the uncountable fray of PHP programming forums and the people using them. (Witness also that people outside this set avoid PHP with great vigour).
However, people who like PHP are most definitely not the people you want to have writing a CMS that holds actual data. MySource is a great example of this. Because the people who designed MySource are basically idiots, a site with 5000-odd pages comes up against issues where on each page render every child page (And its children) has to be individually checked for access rights so the side menu can be generated. As a result, for the above-mentioned 5000-page site, on a fast 2-processor server with gobs of memory, serving a single page takes about 3 seconds.
3 whole seconds.
PHP programmers are the sort of people who write these ridiculous piece of code, and leave the issue scattered through the whole source tree without any hint of abstraction so that fixing it becomes a major rewrite. PHP programmers are the sort of people who release a 'commercial grade' CMS without having ever tested it with 5000 pages.
PHP programmers are great for small websites paid in sweets, but don't use anything they've touched for a CMS.