Joomla! is one of the most powerful Open Source Content Management Systems on the planet. It is used all over the world for everything from simple websites to complex corporate applications. Joomla! is easy to install, simple to manage, and reliable.
Site Administrators – Simplicity & Control
At first glance, you will appreciate user interface improvements. The Joomla! 1.5 Administrator is more refined and the main menu simplified.The global configuration was substantially reworked for simpler presentation and greater control. An important improvement for our international community is having Joomla!’s entire Administrator available in one’s own language using language packs made available at joomlacode.org. Joomla! administrators will find a number of improvements in ease of site management. A single installer is available for all extension types, including languages. The media manager is improved visually and functionally. Images, documents, presentations, and more, can now be stored. Other improvements include multi-delete capability, batch file uploads, and an ability to view media in icon and list formats.
The core article manager is simpler. Gone are dual editor areas from Joomla! 1.0. Now, a single editor with a “Read More” button for separating the introduction from the full article, supports a more natural writing process. A very popular improvement is Joomla!’s new image manager enabling you to browse media folders to select and insert images directly into your article as you write. There is also more control of article pagination than before.
The complexity of choices and steps in the menu manager for Joomla! 1.0 have been completely redesigned for 1.5 in favor of simplicity and elegance. Usability improvements, such as the ability now to change the menu type, make changing your site much simpler. Any menu item can now be used to designate the default page. Selecting menu types is now an elegant drill down process supported by a new navigation tree; collapsible parameter sections simplify choices and increase productivity. Other helpful interface improvements include contextual tooltips and the ability to sort any menu manager column.
One of the more significant functional improvements are search engine friendly URLs, easily implemented within the global configuration. With SEF URLs in place, system generated duplicate content is eliminated, greatly improving site search engine optimization.
Designers – Freedom & Imagination
Designers will notice marked improvements with Joomla! 1.5. Under the hood, the code base was better organized by separating program logic from presentation logic. What this does is empower designers with 100% control over how Joomla!’s content is presented. Now, template designers can use custom layouts, often referred to as template overrides, instead of the typical table heavy output from Joomla! core. The designer’s imagination is the only limit and implementation could not be easier since simply placing a layout file into a designated place makes this possible. This model is being adopted by third party developers who want to offer the same flexibility for their extensions.
Another new addition for template designers is an ability to create custom module chrome. Module chrome is how module output is wrapped in a template. While Joomla! 1.0 has a handful of ways to render modules Joomla! 1.5 gives the designer ultimate freedom in the ability to create whatever chrome is appropriate.
With 1.5 the need for end users to manually edit variables and settings in template files is ancient history. Template parameters are a new feature that allow designers ability to construct templates in such a way that users can change settings from within the template manager interface. The template manager has also been freshened up with features such as the ability to edit any CSS file for the template.
Developers – Rapid Development & Logical Structure
But, the most dramatic improvements to Joomla! 1.5 exist for developers which means good news for future enhancements. The design and architecture of the code base has been planned and executed using current development methodologies and design patterns. Joomla! has been separated into a three tiered stack to keep the internal structure clean and allow developers to leverage the different layers as necessary. The first and most interesting layer for developers is the new Joomla! 1.5 framework. With Joomla! 1.5, developers have an object-oriented, pattern based API that follows best practices and is organized into well structured and logical framework packages.
The Joomla! framework is built to support backwards compatibility to PHP 4.3 while also supporting the most current versions of PHP 5. Developers leveraging the framework will have easier transitions with newer versions of Joomla! since underlying classes have been designed with forward compatibility in mind. The idea is to ensure we have a solid foundation for future development while taking advantage of as much code reuse, as possible.
Some highlights of the new framework include the document package which gives the extension developer control over the entire document rendered on any given page load whether it be an atom feed, a PDF document, or a standard HTML page. The parameters system gives developers a simple, yet extensible way of generating XML based HTML forms for display. The extensibility of the parameters system allows developers to create their own form control objects as well as leverage the many core control objects, ranging from date selection calendar widgets and menu item selection boxes to standard text input fields.
Perhaps one of the most powerful features of the framework is the new MVC based component objects. Developing using the MVC design pattern gives developers a platform for rapid application development and prototyping. The clear separation between logic and presentation helps ensure code reusability and maintainability. Developers can hook into nearly any part of the application stack using Joomla!’s newly reworked events system, implemented according to the observer design pattern. (Joomla.ORG)