Top of Mind from 3by400
Our blog posts are the result of issues and opportunities we see in our daily work. They are designed to increase understanding and provide a source of vision for your web presence.
Doing Things the Joomla! Way
We've now been working with Joomla! for over ten years--since its inception in August 2005. In that 10 years, we have worked with hundreds of web sites and learned a thing or two. One of the tremendous advantages of Joomla! is the vast array of third-party extensions - components, modules and plugins - available to add almost any functionality you can think of to your web site. On occasion, a client requires functionality that cannot be provided by an existing Joomla! extension, so what do you do when Joomla! or one of those extensions doesn't do everything you need?
There are many developers out in the world and even those who know SQL and PHP, the foundation upon which Joomla! is built. However, if you hire a developer to add functionality to your Joomla! site, their ability to work within the context of Joomla! is critical. We have cleaned up many a site in which a well-meaning developer thought that changing core Joomla! code or the core code of a major extension was the right approach. The problem becomes evident the next time you need critical updates to Joomla! or the modified extension. In a worst case, you may not be able to perform the updates, and if you can, you will have lost the customizations.
Although less disasterous, we have seen some instances where the simple beauty of standard functions like menus and modules were hard-coded, rendering maintenance and updates impossible for the average administrator.
Why do they do it? Because they simply don't know the Joomla! Way.
The Joomla! Way is focused on making updates and additions to the site as simple as they can possibly be, using standard tools like the Menu and Module Managers in their native mode. Keep it core Joomla! as much as you possibly can and only extend when necessary...and it will almost always be necessary for sites with any degree of complexity.
Another key element of the Joomla! Way is that where new functionality is required, search diligently through the Joomla! Extension Directory(JED) and keep an open mind. Just because an extension was originally designed for one purpose doesn't mean that is its only application. Think outside the box and consider that by re-labeling fields and changing naming conventions, using the Joomla! Language Manager, an existing extension may fit perfectly for your need. Also, be sure to vet the developer before you select their extension. The JED is a great source because the Joomla! Foundation performs significant review before extensions are allowed in the directory, but it is still a good idea to look at recent reviews and product demos.
The most crucial aspect of the Joomla! Way is that if you cannot find an existing extension to meet your needs, or need modifications to an extension, find a developer who has Joomla! development expertise and can demonstrate that proficiency through development examples.
The proper way to customize most extensions is through plugins and/or modules, and those should be enveloped in an installer package. If you can't load it through the standard Joomla! extension installation, it has not been created in the Joomla! Way. If a developer says they must make changes at the SQL level or modify core Joomla! files manually, they are not observing the Joomla! Way. If you are told not to update Joomla! after a customization has been made, it was not the Joomla! Way.
There are many developers out in the world and even those who know SQL and PHP, the foundation upon which Joomla! is built. However, if you hire a developer to add functionality to your Joomla! site, their ability to work within the context of Joomla! is critical. We have cleaned up many a site in which a well-meaning developer thought that changing core Joomla! code or the core code of a major extension was the right approach. The problem becomes evident the next time you need critical updates to Joomla! or the modified extension. In a worst case, you may not be able to perform the updates, and if you can, you will have lost the customizations.
Although less disasterous, we have seen some instances where the simple beauty of standard functions like menus and modules were hard-coded, rendering maintenance and updates impossible for the average administrator.
Why do they do it? Because they simply don't know the Joomla! Way.
What is the Joomla! Way
The Joomla! Way is focused on making updates and additions to the site as simple as they can possibly be, using standard tools like the Menu and Module Managers in their native mode. Keep it core Joomla! as much as you possibly can and only extend when necessary...and it will almost always be necessary for sites with any degree of complexity.Another key element of the Joomla! Way is that where new functionality is required, search diligently through the Joomla! Extension Directory(JED) and keep an open mind. Just because an extension was originally designed for one purpose doesn't mean that is its only application. Think outside the box and consider that by re-labeling fields and changing naming conventions, using the Joomla! Language Manager, an existing extension may fit perfectly for your need. Also, be sure to vet the developer before you select their extension. The JED is a great source because the Joomla! Foundation performs significant review before extensions are allowed in the directory, but it is still a good idea to look at recent reviews and product demos.
The most crucial aspect of the Joomla! Way is that if you cannot find an existing extension to meet your needs, or need modifications to an extension, find a developer who has Joomla! development expertise and can demonstrate that proficiency through development examples.
The proper way to customize most extensions is through plugins and/or modules, and those should be enveloped in an installer package. If you can't load it through the standard Joomla! extension installation, it has not been created in the Joomla! Way. If a developer says they must make changes at the SQL level or modify core Joomla! files manually, they are not observing the Joomla! Way. If you are told not to update Joomla! after a customization has been made, it was not the Joomla! Way.
Even Styling has a Joomla! Way
Since most site administrators are not necessarily well-versed in HTML (nor should they have to be for Joomla!), inline styling and customization should also be held to a minimum. If styling changes are required, they should be applied globally through a custom CSS or an SCSS override that extends template CSS/SCSS and is not over-written when the template is updated. If you are using a template provider who does not allow for customizing the CSS/SCSS using a custom override, they are probably not doing things the Joomla! Way.
Diligence at the beginning of your search will help ensure the value of your investment over time and the long-term ease of use that you should be able to demand of your Joomla! site.
If you want help with a custom project or anything Joomla!, please contact us. We promise to always do it the Joomla! Way!
Who Does Things the Joomla! Way?
We do! And there are many other professionals around the world doing things the Joomla! Way! You can find some of them in the Joomla Resource Directory (JRD), and although there is some work involved in being listed in the JRD, there is no test or performance requirement to prove that a resource is working the Joomla! Way.Diligence at the beginning of your search will help ensure the value of your investment over time and the long-term ease of use that you should be able to demand of your Joomla! site.
If you want help with a custom project or anything Joomla!, please contact us. We promise to always do it the Joomla! Way!