Dreamweaver is great for creating website designs, but if you want to build a site that’s more than a collection of static pages, you’ll need a content management system (CMS). At the core of a CMS is a database that stores articles, blog posts, user data and other information. A CMS also includes features for configuring the website, posting stories, dynamically generating pages and doing pretty much everything else that we expect of a website. By and large, these are big, complex beasts that require a considerable investment of time to install and maintain. What are the top content management systems? We’re going to explore the best – and why they’re at most designers’ fingertips …
Best Content Management Systems for Designers.
The most popular content management systems—WordPress, Drupal and Joomla!—employ an open-source development model. You can download and use the software at no cost, but more importantly, an open-source license gives developers the freedom to modify and redistribute the code. The “Big Three” have thus spawned large communities of programmers who make improvements and create add-ons that build on the software’s core capabilities. These communities are part of larger ecosystems that include extensive training resources such as books, videos and conferences. And because they are so popular, it’s relatively easy to find developers and administrators familiar with the tools.
As an alternative, numerous companies offer proprietary content management systems that you pay for. Some are downloadable packages that you must configure for use on a server, whereas others are hosted online services. The downside isn’t necessarily the cost, though you certainly have to factor that in. The main issue is that these programs lack user or developer communities that match the “Big Three” in terms of size or scope. Instead, the vendors point to advantages such as ease of use, better features or integrated design tools.
WordPress is by far the most widely used CMS. It began as a blogging platform, and remains a popular choice for blog-heavy websites. However, you can use it to build other kinds of websites as well own website is built in a responsive WordPress theme.
Compared with the other open-source systems, WordPress stands out for ease of use. Designers in particular seem to prefer it over Drupal and Joomla. However, even with its large selection of plug-ins, it’s not as customizable as the other systems, and it has a reputation for being prone to security holes. WordPress is generally best-suited for sites with relatively simple requirements, or where the users responsible for content-posting or site administration are not technically proficient.
WordPress uses “themes”—packages containing CSS, PHP and other files—to determine how the site appears to end users. Users can download free themes from WordPress.org or purchase commercial themes from various sources. However, most designers will want to develop their own themes. To build custom themes from scratch, you’ll need a solid grasp of CSS and at least an entry-level understanding of PHP, the programming language that underlies WordPress. However, numerous guides are available to help you through the process. Another option is to use one of many theme frameworks, some of which remove the need for manual coding.
Whereas designers seem to prefer WordPress, Drupal is a favorite among developers. It’s the most-customizable of the Big Three and the one best suited for large enterprise sites with thousands of pages. It also has a reputation for being the most secure of the top systems. One well-known site created in Drupal is WhiteHouse.gov. Here are others for further investigation.
The default Drupal download contains the core of the CMS, allowing you to create a simple website. However, Drupal gets its power from the 25,000-plus add-on modules contributed by developers. These modules cover every conceivable aspect of website development, but programmers are free to build their own modules as well. You can also find packaged distributions of Drupal for specific applications, such as publishing, academic and nonprofit sites. The main rap on Drupal is that it has a steep learning curve and is difficult to use. This was especially true prior to the release of Drupal 7 in 2011. You don’t have to be a developer to build or manage sites in Drupal, but most users will find WordPress to be easier. Another issue is backward compatibility. Modules have to be rewritten for each major upgrade, so moving from one version of Drupal to the next is a big undertaking. Though Drupal 7 is the current version, many sites are still on Drupal 6 due to the expense and difficulty of upgrading. Drupal 8 is currently in alpha testing, and it’s not yet clear when it will be released. Even when this happens, it will likely be months before many modules are fully upgraded and suitably de-bugged. So if you’re planning to work with this CMS, you should begin with Drupal 7 and prepare your clients to bite the bullet if they eventually want to move to Drupal 8. As with WordPress, Drupal uses themes to define the appearance of web pages, and the process for creating and customizing themes is similar. You can download existing themes, build them from scratch or use “starting themes” as a shortcut. You’ll need a basic understanding of PHP to create or modify themes, but as with WordPress, you can find extensive training resources online.
Joomla occupies a middle ground between the other two open-source systems: It’s more customizable than WordPress, and some regard it as being easier to use than Drupal (at least the versions prior to Drupal 7). It has a sizable developer community, but the selection of add-ons is relatively limited—about 7600 compared with 25,000 for Drupal and 30,000 for WordPress. This makes you more reliant on developers if you want capabilities not available in the core software.
To define the appearance of web pages, Joomla uses “templates,” a package of files similar to the themes in WordPress and Drupal. As with the other systems, you can download existing templates or create your own.