Welcome!

Linux Authors: Colin Walker, Maureen O'Gara, Keith Bergelt, Data Recovery Software & Tools, Glenn Rossman

Related Topics: Linux

Linux: Article

Open Source Web Site Content Management Systems

Bricolage, phpWebsite, Mambo, and Zope

Web site content management can be difficult, and commercial products can be expensive. Luckily, a few open source projects are highly recommended for the job. In fact, eWeek has claimed that Bricolage was one of the best content management systems it has ever seen, even among commercial offerings, and Mambo won best of show at LinuxWorld this February. In this article, I'll get you started with an overview of these examples of production-ready open source projects.

Bricolage
Bricolage (http://bricolage.cc) is a free open source content management and publishing system. Its full set of features includes intuitive and highly configurable administration, workflow, permissions, templates, server-neutral output, distribution, and document management. It was designed to manage dynamic online content with multiple contributors for a complex web site, but can be used to manage any online content. The product uses Perl, Apache, and PostgreSQL.

Bricolage began as an internal content management system for Salon.com. The publication wanted to create a product from the code base and looked for investment capital to fund a commercial product. When the capital didn't materialize, Salon.com sold the code to its customer About.com. About.com continued to work on the project, hiring some of the original developers. It released Bricolage under the Revised BSD license in 2001. Current users include Macworld.com, the World Health Organization, and the Ad Council.

In an eWeek review, Bricolage was found to be "one of the best content management systems eWeek Labs has seen, even eclipsing some of the best-known commercial products" (www.eweek.com/article2/0,3959,652977,00.asp). Comparable proprietary systems, such as Vignette and Interwoven, can cost hundreds of thousands of dollars per installation. Since Bricolage is free, it's feasible to use it to manage internal content in any size organization. According to maintainer and lead developer David Wheeler, the quick success of the project was partly due to early corporate support. Current users also contribute code.

Kineticode (http://kineticode.com), founded by Wheeler, offers a full range of commercial support options. Free support is also available from the community on the project mailing lists (http://sourceforge.net/mail/?group_id=34789).

phpWebsite
phpWebsite (http://phpwebsite.appstate.edu) is a free open source content management system developed by Appalachian State University in Boone, NC. The project had its start in 2000 when Brian Brown, director of electronic student services at the university, was tasked with organizing the web presence of over 40 departments. With such diverse content, he clearly needed a professional-quality content management system, but the commercial products were too expensive. Appalachian State had also been abandoned in the past by vendors of proprietary software, and Brown wasn't keen for it to happen again. It was important to him that the school have control over the source code so that no third party could force inappropriate changes on the school, so it built it itself. The result is an easy-to-use, modular, extensible Web content management system that's been consistently among the most popular open source projects.

Because the university is publicly funded, Brown thought it appropriate that the work should benefit the public. phpWebsite was released under the LGPL, which lets proprietary software link to its code. Two full-time staff members maintain the code base, and the work revolves around functionality most useful to the university.

The main design goals are to make phpWebsite flexible and extensible. A modular design and the use of PHP make it easy to create custom functionality through drop-in modules, making it a platform for rapid Web development. Several modules are included in the core installation, such as calendaring, e-mail, a photo album, form generators, polling, and a facility for Web site visitor interaction such as posting notes.

The team is currently working on improving the documentation on the open API (application programming interface) libraries to make it easier to create custom modules. Third-party modules are beginning to appear, and a few have spawned their own separate open source projects. The server runs on MacOS X, Windows NT/2000, BSD, and Linux, and configuration can be done from any Web browser. Even if you're not ready to run Linux on the server, you can take advantage of phpWebsite on a Windows server.

Free support for advanced users can be had via the project forums and mailing lists (http://sourceforge.net/projects/phpwebsite/). Basic documentation is provided on the project Web site (http://phpwebsite.appstate.edu). Commercial support is available from at least two companies, offering a range of services. ITWebSolution (www.itwebsolution.com/) provides off-site hosting using phpWebsite and support for your internal installations. It also offers design templates used in phpWebsite to define a look. LACMedia (http://lacmedia.com) provides installation, configuration, and customization, along with custom module development and off-site hosting.

Mambo
Mambo (http://mamboserver.com) is a content management system that enables the easy creation and maintenance of Web sites and portals. The system, based on PHP and MySQL, was written for ease of use so administrators don't have to be IT professionals. Mambo features a Web-based installation process, a WYSIWIG editor, access control levels, a media manager, and support for over 50 languages. Third-party add-ons are listed on the project Web site. Miro (www.miro.com.au), a company based in Australia, originally developed Mambo and released it as open source.

Mambo won the 2004 Linux User and Developer Award given by Linux User and Developer Magazine for "Best Linux or Open Source Software" and "Best of Show" at LinuxWorld in Boston this past February. A gallery of Mambo sites is featured on the main Web site that nicely demonstrates the range of possibilities you can achieve.

Mambo documentation can be found on the Web site, and there's an active user community participating in forums that can provide help. Miro offers commercial support for the project and maintains a close relationship with the core developers. Commercial support and custom features are also provided by Blue Flame IT Ltd. (www.phil-taylor.com).

Zope
Zope (http://zope.org) is a free open source Web application server used to build content management systems, intranets, portals, and custom applications. It features a transactional object database that can store static content, dynamic HTML templates, scripts, a search engine, database connections, and code. It allows for remotely updating your portal with built-in security. A range of plug-ins is also available.

Zope Corporation, the makers of Zope, was originally formed in 1995 in Fredericksburg, VA to develop a classified ad engine for the Internet. The company released Zope as open source in 1998 and began to concentrate on providing customized services for the general-purpose content management system.

The project Web site hosts a nice collection of documentation, including an entire book in PDF format, an API reference for customizing Zope, tutorials, and articles. Free support can be found on the mailing lists (http://zope.org/Resources/MailingLists). There are a few user groups worldwide, and they are listed on the project website (www.zope.org/Resources/UserGroups/). Zope Corporation (http://zope.com) offers technical support, custom application development, and managed Zope hosting services. It also sells several pre-packaged solutions based on Zope, including a complete intranet/extranet system, a content publishing solution for media companies, a membership registration system, and a replication/redundancy system for Zope installations.

In this article, I've provided a high-level overview of four open source content management systems that are ready to use now. A range of support and services are available, frequently from the inner circle of developers. It's never been easier or cheaper to implement a content management system, thanks to open source.

SIDEBARS

Bricolage Features

  • Free open source content management and publishing system
  • Replaces expensive proprietary systems
  • Easy to use modular design
  • Commercial custom development available from core developer

phpWebsite Features

  • Free open source content management system
  • Developed and maintained by Appalachian State University
  • Easy to use modular design
  • Extensible, designed so developers can build their own modules
  • Server runs on MacOS X, Windows NT/2000, BSD, and Linux.

Mambo Features

  • WYSIWYG editor
  • Easy to use
  • Access control levels
  • Banner management
  • Templates
  • Content versioning and archiving

Zope Features

  • Free open source Web application server
  • Out-of-the-box content management system
  • Transactional support
  • An API for easier customization
  • Runs on Linux, Windows, and other operating systems
  • Works with multiple Web servers and databases

More Stories By Maria Winslow

Maria Winslow is the author of The Practical Manager's Guide to Open Source, available at http://www.lulu.com/practicalGuide and can be contacted at maria.winslow@windows-linux.com.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.