Joomla CMS (Content Management System) Banner Image
June 9, 2010

Joomla CMS (Content Management System)

What is Joomla?
Joomla is an Open source CMS (Content Management System) developed in PHP & MySQL. Using Joomla we can build fantastic websites and web applications. Easy to understand and extensible Joomla has established itself as one of the best CMS software. And the best part is it being Open source which makes it free to use. Joomla is always in a constant battle to win every CMS award (CMS awards by Packtpub.com). And it has won the battle many times. In 2006 Joomla won the “Overall Winner” and 2007 Joomla won the “Best PHP Open Source Content Management System”. As the amount of users using Joomla have increased tremendously Packtpub.com now has an award “Joomla! Award” especially for Joomla sites. No doubt Joomla is the best cause it crossed the 1000000 number mark for the amount of users downloading it.

Inside Joomla:
This was the first CMS which we worked on. Beginners love the first look of Joomla. May it be the backend or the front-end. The folder structure is also very easy to understand. Peeping inside the backend you will find excellent features like the Media Manager (Manages media files like images, videos, etc.). The Control Panel gives you all the settings you want to see regarding the installed site and server. We have User Manager for user management. Menu manager takes care of the site menu.
It does not take much time in understanding how Joomla works. Now, this is what happens on the screen. This is what we see the client sees. Let’s see what actually happens behind the scenes.

Developer’s Joomla:
A developer working on Joomla should be through with PHP skills and MySQL query firing. The HTML & CSS skills are also required if the person is going to develop a template. Joomla is divided into Components, Modules, Plug-ins and Template. We will talk about Joomla 1.5.x version which is the latest. Not to forget that we have Joomla 1.6.x on the cards and coming soon. The beta release is already there to download. When Joomla jumped from 1.0.x to 1.5.x it was like upgrading from Windows 98 to Windows XP. So the latest Joomla 1.6.x will have something exciting.

  • Components:
    Component is the main content display for the site. A component uses the full display area of the site. Joomla uses the MVC (Model – View – Controller) architecture. There are many PHP frameworks using MVC due to its well created structure and easy to manage. As compared to other frameworks Joomla component “folder structure” is easy to understand. Just one proper glance at the Joomla component is enough to understand how the files are kept.
    In addition for the component template files Joomla gives you something more. If you want to design a page for printing or PDF then just name your component view file as view.print.php or view.pdf.php. By default its view.html.php. And you are done creating print and PDF pages!
    There are many such methods written in the Joomla library to be used.
  • Modules:
    If components eat up the full site content area then we have modules which we can display at the assigned locations in the site template. By default Joomla installs many sample modules. Banners, latest news, etc. There are many such modules which you can use to build a site fairly quickly. Even you can have a custom html module which displays simple plain html code. All modules can be managed from the backend. Each module can be turned on/off from the backend. Creating “Polls” in the site has never been so easy with the polls module. Custom modules can also be developed in less time.
  • Plug-ins
    Plug-ins can be also called extensions. Each plug-in has a type. It can be a system plug-in or content plug-in. If it’s content plug-in then you can call it inside the content area of a module or an article.Example: {plug-in name} make this text bold. {/plug-in name}
    This will print like — make this bold.
  • Templates:
    Creating sites templates is very easy in Joomla, though thorough knowledge of the template tags, Global variables, etc is a must. Also HTML and CSS is a must here otherwise you end up with a broken design. The template management in Joomla is fantastic. Tools like the template manager in the backend let you manage the template index file as well as the CSS. Switching templates in your site is also great. One more thing which makes Joomla the best CMS in templates is that every content menu link can be assigned a different template. I.e. multiple templates can be used for one site easily.