Content Management Systems

Content Management SystemsA Content Management System, or CMS for short, is a web based application that allows non-technical users to manage the content of a website. These applications are built using web technologies such as PHP or the .NET Framework and utilise a database, for example, MySQL, PostgreSQL, Oracle or SQL Server, to store the website information.

Below are some examples of Content Management Systems in use today:


DrupalDrupal is a free and open source CMS that is built using the PHP scripting language and utilises a database such as MySQL, PostgreSQL or SQLite. It has a community of over 630,000 to help in its development and is used by anyone from small businesses to global corporations. Although Drupal is a very customisable CMS, from a development point of view, it does have a steeper learning curve than Joomla and WordPress, the other PHP based CMSs discussed here.

How Tos and Useful Stuff

Useful Modules

Hippo CMS

Hippo CMSHippo CMS is an open source CMS built using the Java programming language, that is said to be easy to integrate with other systems. There are two editions available, a free community edition, together with an enterprise edition.

Hippo CMS can respond to visitors by showing content based on their preferences, history of past visits and even their location. It can also show content that is relevent to the current day of the week. The rules for determining this targeted content can be defined within the CMS and it is possible to emulate different types of users to preview how the website would look for them. The behaviour of visitors can also be monitored in real-time, so there can be a quick response to changes in their habits.

How Tos and Useful Stuff


JoomlaJoomla is a free and open source PHP based CMS that utilises a database, either MySQL, PostgreSQL or SQL Server. It is used for anything from personal to global corporation websites. As with Drupal and WordPress, it has a large community to aid in its maintenance and enhancement. It is also known for its ease of use.

How Tos and Useful Stuff


PlonePlone is a free and open source CMS that is built on top of the Zope Application Server, which is created using the Python programming language.

Development on Plone started out back in 2000 and was first launched in 2003. The Plone Foundation are the main driving force behind the development of the project, together with significant support from the Plone Community.

From a security point of view, Plone is said to have the strongest security functionality of all the open source CMSs. This has meant that it has become popular with security conscious organisations and even United States government agencies such as NASA and the FBI.

How Tos and Useful Stuff


UmbracoUmbraco is a free and open source CMS that is based on Microsoft's .NET framework and developed in the programming language C#. Like the other CMSs discussed here, it can be used with a MySQL database, however, with it being based on the .NET framework, it works with a number of different editions of SQL Server as well. When compared to Drupal, Joomla and WordPress, it has a relatively small community to aid in its development. As with Drupal, from a development point of view, it also has a steep learning curve.

How Tos and Useful Stuff

Umbraco 8
Umbraco 7


WordPressAs with Drupal and Joomla, WordPress is a free and open source CMS built using PHP. It also utilises a MySQL database. WordPress was originally created in 2003 purely as a blogging tool, but has now developed into something that can be and is used for large corporate websites. As with Joomla, it is also known for its ease of use.

Official Documentation

How Tos and Useful Stuff

WordPress Developer Tools
Useful Plugins
  • Admin Colour Schemer - Create your own admin colour scheme, right in the WordPress admin under the Tools menu.
  • Admin Colour Schemes - Bring some personality to your WordPress site with extra admin colour schemes.
  • Admin Menu Editor - Lets you edit the WordPress admin menu. You can re-order, hide or rename menus, add custom menus and more.
  • Advanced Custom Fields - Customise WordPress with powerful, professional and intuitive fields.
  • Akismet - Akismet checks your comments against the Akismet Web service to see if they look like spam or not.
  • All in One SEO Pack - The most downloaded plugin for WordPress (almost 30 million downloads). Use All in One SEO Pack to automatically optimise your site for Search Engines.
  • Broken Link Checker - This plugin will check your posts, comments and other content for broken links and missing images, and notify you if any are found.
  • Child Theme Configurator - When using the Customiser is not enough - Create child themes and customise styles, templates, functions and more.
  • Classic Editor - Restores the previous editor, following the introduction of the new default editor, Gutenberg, in WordPress version 5.0.
  • CMS Tree Page View - Adds a tree view of all pages & custom posts. Get a great overview + options to drag & drop to reorder & option to add multiple pages.
  • CM Tooltip Glossary - Easily create a glossary, encyclopaedia or dictionary of your terms and show responsive tooltips when users hover over the terms.
  • Custom Admin Footer Text - Display custom text (or links) in the admin footer.
  • Custom Dashboard Help Widget - Add a custom widget to the dashboard to display announcements, help or other information users will see at login.
  • Custom Login - Custom Login allows you to easily customise your admin login page, works great for client sites!
  • Custom Post Type UI - Admin UI for creating custom post types and custom taxonomies in WordPress.
  • Display Widgets - Simply hide widgets on specified pages. Adds checkboxes to each widget to either show or hide it on every site page.
  • Gutenberg - Gutenberg is the new default editor in WordPress 5.0 and above. This plugin allows it to be installed in WordPress 4.9.8.
  • If Menu - Show/hide menu items with conditional statements.
  • iThemes Security - Gives you over 30+ ways to secure and protect your WordPress site.
  • Jetpack by - Increase your traffic, view your stats, speed up your site, and protect yourself from hackers with Jetpack.
  • Login Logout Menu - You can now add a correct login & logout link in your WP menus.
  • Logout Redirect - Redirect to a link after logout.
  • Members - The most powerful user, role, and capability management plugin for WordPress.
  • Ninja Forms - Create forms and manage submissions easily with a simple drag and drop interface. Contact forms, subscription forms, or any other form for WordPress.
  • Profile Builder - Simple to use profile plugin allowing front-end login, user registration and edit profile by using short codes.
  • Regenerate Thumbnails - Allows you to regenerate your thumbnails after changing the thumbnail sizes.
  • Safe Redirect Manager - Safely and easily manage your website's HTTP redirects.
  • Schema Creator by Raven - Insert microdata into WordPress pages and posts.
  • Theme Check - A simple and easy way to test your theme for all the latest WordPress standards and practices. A great theme development tool!
  • Very Simple Contact Form - This is a very simple contact form. Use short code [contact] to display form on page or use the widget. For more info please check readme file.
  • Widget CSS Classes - Add custom classes and ids plus first, last, even, odd, and numbered classes to your widgets.
  • WP Super Cache - A very fast caching engine for WordPress that produces static html files.
  • WooCommerce - WooCommerce is a powerful, extendable eCommerce plugin that helps you sell anything. Beautifully.
  • Yoast SEO - Improve your WordPress SEO: Write better content and have a fully optimised WordPress site using Yoast SEO plugin.
Object-Oriented Programming in WordPress

How Tos and Useful Stuff