Joomla 3 is what is known as a Content Management System or CMS. It a system that allows the site editors to easily add content, text, images, maps, advertisements, etc.

The core installation files for Joomla are open source and free.  The installation .zip file can be obtained from The core installation allows you to create a web site with basic functionality.  To extend the functionality you can install what are called Extensions.  These Extensions can be free or obtained at a relatively small cost.  If you need very specific functionality for your site there are web development companies that can write Extensions for Joomla.

What is a Content Management System (CMS)?

CMSFor complete novices to web development:

Web pages are made up of a markup language called HTML. The browser, such as Chrome, Internet Explorer, Safari, Firefox and Opera, interprets this HTML and displays it on the screen for the user. There are other programing languages also used, such as PHP, JavaScript, Ruby, WebMatrix, and ASP.NET that manipulate the web pages to do certain functions. There are also websites that use MySQL databases to store the content and images and allow for manipulation using PHP or ASP.NET, etc.

The look of the web page, such as colors, fonts and layout are done with styling, most often with a stylesheet called CSS, or Cascading Style Sheet.

What does the CMS do?

A CMS uses a combination of HTML, PHP, MySQL and CSS, or Microsoft Windows based ASP, to create web pages. It makes it so the contributor does not necessarily need to understand the markup language, programing or styling to edit, create or organize the content on their website. Setting up a new CMS installation, and styling it to your liking, does require a certain knowledge of the workings behind the site.

Reasons to use a CMS:

  • Allows companies and individuals to manage their own web site without having to know HTML, JavaScript or PHP
  • Allows multiple individuals to easily add content and images to a web site.
  • Allows expanded functionality to be added to a web site without requiring the need to hire expensive programmers
  • Increased security is built in to keep your site safe from hackers
  • The core installation of Joomla is free, open source and used all over the world. Unlike custom CMS systems where you have to stay with the same web developers for maintenance.
  • Allows the web site to utilize database functionality without having to have extensive knowledge about databases
  • Easily install a Search function that allows users to easily find content on you site.
  • Save time by using text editors to write content, upload images, set links, etc. rather than using HTML.
  • Keep track of popular articles by recording how often they are accessed
  • Allows you to sort data by Categories or Tags

Front End vs Back End

The Front End is what you see in your browser when you type in the url for the site.  It is the web pages, the navigation, the banner across the top, the footer, the content, all styled in whatever way you wish.  The Back End is the Administrative Menu that allows you to control your site and create content as articles or modules.

The Back End has components and plugins that affect the functionality of the site.  When the web site administrator wants to add or edit content, or add a component that adds functionality, he goes into the administrative side.  With Joomla, you can also set it up to make edits from the front end, but the real work is done from the administrative menu.

Core Files

apple-coreThe core files come with the standard free Joomla installation. They are in folders that contain the graphics, the styling, the JavaScript and the PHP files that make up the Joomla Front End and Administrative pages.  You don't have to know PHP to install or use Joomla, but a certain knowledge of PHP can help you immensely in understanding how Joomla works. You should not modify the core files as it can break the look and functionality of your site.  There are other ways of making your site to fit your needs by finding just the right template, creating overrides to the core files, or modifying the included template files yourself.


Joomla templates control the look of your site, and to some degree the functionality of your site. The standard installation of Joomla 3+ comes with two Front End templates, but there are free and paid-for third party templates available that can make your site look and act exactly as you want.  Joomla also comes with Administrative templates that modify the look of the Back End.

To modify the Joomla layout, position locations, styling, you modify the files in the template.


Extensions are files that work with the Joomla framework to add specific functionality to your site.  Some examples would be to add a slideshow, membership signup, expanded administrative functionality, languages, social web capabilities, etc.  Extensions are written by third-party companies or individuals.  They may be free or come at a cost.  You can find a listing of extensions at

You need to be careful with extensions as they can alter the functionality of your site in negative ways or open up your site to security vulnerabilities. has a list of extensions with known vulnerability issues.  Visit for this list. Some of these extensions have had bug fixes and are alright to use in later versions, so watch for that as well.

Choose the Extensions that you want to use wisely and only use the minimum number of Extensions that your site requires. Extensions can conflict with each other, they may slow down your site, they may not be upgraded for all Joomla upgrades or the creator may stop providing the extension altogether. Stick to the most popular extensions and read the reviews first.

Responsive Styling

responsive-graphicEverything is about going mobile in web design these days. People are viewing web sites on laptops, phones, tablets, large monitors, and television screens. Your web site needs to respond to these screen sizes and be readable and communicate your ideas at the same time.

Joomla 3 has built in responsive styling using Bootstrap 2.  Bootstrap is a system the was developed by two web developers from Twitter. It's a clean easy to use system that is easy to use once you understand the basics.  The default template for Joomla 3 is Protostar which works hand in hand with Bootstrap.

Zemplate has a web site that goes into the Joomla 3 - Protostar - Bootstrap concept in depth.  You can view this site at

The downside of using a CMS


When you use a CMS system like Joomla, Wordpress, Drupal or the like, you are using someone else's programming. You may have some specific task that you want your website to perform, but you feel that you are the mercy of the people that developed the CMS or the plug-ins, widgets, or extensions. If you are a master programmer, you could write your own plug-ins or modify the 3rd Party versions, but this is a task for only experienced developers and most users aren't going to know how to do this.


The most popular CMS systems are free and open source.  This means that anyone can learn the vulnerabilities of the code. The providers of the CMS are constantly having to upgrade the software due to security holes. Keeping up on the changes can be time consuming and may cause problems with your site as the plug-ins or extensions may not be compatible with the upgraded versions.

Administrative Issues

If you had a developer build your site in a CMS system and he or she falls out of the picture, you are facing the task of finding someone else to do the administrative tasks for your site. There are many developers that know about and use WordPress, so that shouldn't be a problem. With Drupal and Joomla, you won't find as many developers that have knowledge of those systems, but with the even lesser known CMS systems, you could have a real challenge finding some one to work on your site.

The Tradeoff

CMS systems are great, but recognize that there can be issues that you will need to face. The more popular ones have a large web presence with a huge community and multiple help and forum site where you probably can find an answer to any problems that you are having.

This being said, finding solutions to problems with your CMS can be daunting.  There will be conflicting approaches to the solution, there will be those that make suggestions that are actually dangerous for your site, and if you have limited knowledge about PHP and MySQL, you may not understand their answers.

Make a decision - CMS systems can save you many many hours of coding, they offer database access without having to have database knowledge and you can get a site up and going in a matter of hours. If you are willing to deal with the occasional problems, then a CMS system may be right for you.

Everything you ever might want to know about Joomla, and more

Go to's documentation for specific information about everything Joomla!