With solutions such as The Zend Framework and CodeIgniter making it easier than ever to create complex web applications, it can be tempting to flex your developer muscles and create custom framework-based solutions whenever the opportunity arises.
However, the PHP community has also made great strides with another type of web development solution, as the content management system (CMS). Intended to facilitate the workflow in a collaborative environment, a CMS is traditionally considered to be ideally suited for managing the writing, editing, and publication of pages, images, and downloadable documents comprising a web site. However, today's CMS solutions are capable of doing so much more, with the PHP community arguably leading the charge towards the availability of impressively sophisticated open source, hybrid open source, and commercial solutions.
In this article, I'll take a look at five prominent PHP-driven content management systems, discussing their key features and highlighting prominent deployments. Although such compilations are popular for inducing much discussion regarding the particular merits of one solution over another, my goal is merely to provide those beginning the investigatory process with a valuable starting point. If you would like to recommend other solutions, please add your suggestions in the comments!
With version 1.0 released in 2001, Drupal ranks among the oldest and most
popular CMS solutions. Its maturity shines through in a wide variety of ways, whether through the incredible amount of project documentation, the high-profile users (see "Prominent Deployments" below), or the availability of third-party learning resources such as DrupalCon.
As is a common theme throughout this article, Drupal's success rests largely
on the vibrant user community, which has contributed literally thousands of modules capable of
extending the core software in every conceivable way. You'll also find an aftermarket of free and commercial Drupal-specific themes capable of satisfying any design need.
Users interested in commercial support services should check out Acquia, a Drupal-oriented firm founded by none other than Drupal creator Dries Buytaert.
The White House: In what was certainly one of the highest-profile coups for open source CMSs, in late October 2009, it was announced that WhiteHouse.gov had migrated to Drupal. Given not only the enormous traffic to the site on a daily basis, in addition to the obvious security considerations, the decision to use Drupal for a high-profile governmental web site is a great testament to the viability of not only Drupal, but open source software in general.
Figure 1. WhiteHouse.gov Offers Slick Video Integration
ExpressionEngine is the most recent newcomer of the five CMS solutions introduced in this article. However, this is really in name only, as ExpressionEngine's roots are intertwined with pMachine, which at one point was one of the most popular CMS solutions around. With such a storied history, and built atop the popular PHP framework CodeIgniter, ExpressionEngine already offers an incredible array of features and boasts an impressive portfolio of high-profile users.
Three versions of ExpressionEngine are available, with a free version and personal version ($19.95) available for non-commercial use and a commercial version available for $249.95. You also can purchase a variety of modules for managing multiple sites and forums at relatively low costs.
Figure 2. ExpressionEngine 2.0 Beta Is Bundled with Dozens of Easily Installable Modules
Prominent ExpressionEngine Deployments
ERwin: The ERwin Data Modeler product has been a staple among database administrators and developers alike for years. The vast product web site offers a great deal of information about the product, community, and purchasing options.
HelpSpot: HelpSpot offers an impressive array of technical support options for small and large businesses alike. This powerful example of an ExpressionEngine deployment is ideal for determining just how far this CMS can take you.
An open source CMS with roots dating back to 2002, Joomla has long ranked among not only the PHP community's but also the world's most popular content management systems. Offering a wide range of features within the core download, Joomla offers
everything a developer will need to create a community-driven web site, including:
User management tools capable of authentication using protocols such as OpenID and even Google Accounts
A media manager capable of managing a wide variety of content types
A built-in contact manager
Like Drupal, Joomla can be extended in countless ways thanks to a vibrant community that has contributed more than 4,200 extensions as of the time of this writing. Some of these extensions are quite ambitious. For example, the BookiT extension can manage conference bookings or hotel reservations, and VirtueMart is a complete e-commerce shopping cart solution created expressly with Joomla in mind.
Prominent Joomla Deployments
The Guggenheim: The Soloman R. Guggenheim Museum ranks among the country's most popular, hosting some of the world's most famous artwork. Its web site allows visitors to become members or renew their memberships, browse and search the museum's collection, or learn more about current exhibits.
Palm's Developer Center: Palm's Developer Program web site contains all of the information developers need to learn how to develop applications for the Palm computing platform, including Ares, Palm's new web-hosted development environment.
Like most of the other CMS solutions discussed in this article, the SilverStripe project is backed by a namesake corporate entity that offers a variety of design, hosting, and integration services. To learn more about what SilverStripe Ltd. has to offer, check out silverstripe.com.
Prominent SilverStripe Deployments
City of Melbourne Public Transport System: The City of Melbourne public transportation system web site, better known as Metlink, provides comprehensive information regarding the train, tram, and busing services in and around the Melbourne area. Complete with interactive route maps, the ability to purchase tickets, and news regarding the latest service disruptions and changes, the Metlink web site is a great example of the breadth of content management capabilities offered by SilverStripe.
Originally conceived in 2003 as a blog management tool, WordPress has since become one of the most successful open source projects in the world, with an estimated 202 million WordPress-powered web sites hosted worldwide. Note the reference to 202 million web sites rather than blogs, as over the years WordPress has evolved from a blog-specific solution to one capable of managing even the most ambitious web site endeavors.
The core WordPress engine is a tad sparser than the other solutions discussed in this article, with the developers choosing to focus primarily on the key features that make any community- or team-driven web site successful. Among other features, you'll find a content commenting solution, support for user registration, the ability to manage multiple content authors, and a well-designed themes solution.
Developers seeking to go beyond the core features can browse the WordPress Plugin Directory, which as of this writing contains over 8,200 plugins capable of performing everything from basic yet useful tasks such as tracking the total number of
published comments to revamping your web site's look-and-feel for viewing on the
iPhone or other mobile device. Additionally, the themes directory contains more than 1,100 themes suitable for skinning everything from a user group blog to a Fortune 500 web site.
WordPress has also taken care to provide users with ample opportunities to update and manage their sites while on the go, thanks to several native mobile applications. Applications for Android, BlackBerry, and the iPhone are currently available. These mobile options alone could be enough to seal the deal with prospective clients who are concerned about their ability to monitor and manage web site content while facing hectic travel schedules.
Prominent WordPress Deployments
WSJ. Magazine: A sister publication of the popular newspaper daily The Wall Street Journal, WSJ. Magazine boasts a regular publication schedule, with articles often including companion videos, the familiar WordPress commenting feature, and a well-integrated set of tools for e-mailing, printing, and sharing content.
Tasty Kitchen: Tasty Kitchen is a very impressive community web site tracking favorite cooking recipes from members around the globe. Supporting Windows Live Login, an active member community, and an interactive recipe-preparation interface, Tasty Kitchen is a highly inspirational example of just how far WordPress can take you.
Mozilla Labs: The Mozilla Foundation's experimental arm uses this web site to discuss and host the experimental projects, which like Firefox and Thunderbird, just might soon find their way onto laptops around the world.
Figure 3. Tasty Kitchen Offers a Convenient Serving Size Adjustor
Clearly, PHP developers aren't left wanting when it comes to powerful CMS solutions. However, although all of the aforementioned solutions are ultimately capable of achieving the desired goal, each boasts unique advantages and features, as well as suffers unique flaws. Therefore, while I hope this overview provides you with some direction regarding which solution might be most suitable for your particular needs, I nonetheless strongly recommend taking the time to download, install, and experiment with each solution before settling upon a final decision. Further, if you need a particular feature, such as a shopping cart or forum solution, be sure to specifically investigate what each CMS solution has to offer in that regard, and check out other users' forum and blog posts to learn more about their particular experiences.