Definition:
Joomla is a free and open source content management system (CMS) for the creation and publication of web content, allowing the development of dynamic and interactive websites. It is built on a model-view-controller web application framework that can be used independently of the CMS, with fast on-the-fly updates and a high level of customization in the development of templates.
Joomla is written in PHP, uses object oriented programming (OOP) techniques and software design patterns, is capable of storing data in a MySQL, MS SQL or PostgreSQL, and includes features such as page caching, RSS feeds, printable versions of pages, news flash, blogs, search and support for language internationalization.
History of Joomla
Joomla originated as a fork of the Mambo content management system in August 2005. The split came about due to disagreements between the core developers of Mambo and Miro Corporation, the company that owned the rights to Mambo at the time. The Mambo developers were concerned about the direction in which Miro wanted to take the project, especially in terms of control and access to source code. The Joomla founding team, composed of former Mambo developers, decided to create a new project that would maintain the open source philosophy and collaborative community. Key members of this team included Andrew Eddie, Brian Teeman, Johan Janssens, Jean-Marie Simonet, and other key contributors from the Mambo community.
The project has evolved with its consequent versions:
- Joomla 1.0: Released in September 2005, it was an evolution of the Mambo CMS.
- Joomla 1.5: Released in January 2008, this version included long-term support.
- Joomla 1.6: Released in January 2011, it introduced new features such as Access Control Lists (ACL).
- Joomla 2.5: Released in January 2012, it also offered long-term support.
- Joomla 3.0: Released in September 2012, it incorporated Bootstrap.
- Joomla 3.5: Released in 2016, added support for PHP 7.
- Joomla 3.9: Released in October 2018, known as the “Privacy Tool”.
- Joomla 4.0: Released in August 2021, with a revamped interface and accessibility improvements.
- Joomla 4.1: Released in February 2022, with new features and security improvements.
Joomla Extensions
Joomla extensions extend the functionality of your websites. There are five types of extensions, each tasked with a specific function:
- Components: they are the largest and most complex extensions. Most of the components are divided into two: a site and an administrator. Each time a Joomla page loads, a component receives the call to produce the main body of the page. The components generate most of the page, directed by a menu item.
- Plugins: are advanced extensions; in essence, they are the event handlers. When running any Joomla extension, module, or component, an event might be triggered. In that case, the plugins that are registered to handle that event run.
- Templates: Describe the main design of a Joomla website. While the CMS manages the content of the website, templates determine the style or appearance.
- Modules: generate the pages in Joomla. They are linked to components to display new content or images. They have the appearance of boxes, such as the search or login module.
- Languages: These are a very simple extension that is either used as a part of the kernel or as an extension. Font language and information can also be used for PDF or PSD in conversions.
Where to download Joomla
The latest version of Joomla can be downloaded directly from Joomla.org. From that same portal you can download the extensions in the https://extensions.joomla.org/section.