IN THIS CHAPTER
Understanding basic principles
Using the right tools
Discovering the Joomla! API
Working with components
Working with modules
Working with plugins
Joomla! is extensible and customizable by design. The system's various components, modules, and plugins are easily identified and can be targeted for customization. This chapter focuses on the basics of customizing those key elements.
Components, the system's most complex element, employ the Model-View-Controller architecture that cleanly segregates the business logic from the presentation layer. Although the MVC architecture helps make the planning and creation of new components simpler, component creation remains a challenging and sometimes complex task suited more to experienced programmers.
Modules are the most commonly modified element in the system. Managing the customization of modules is relatively easier than working with components and can be done by anyone with basic programming skills and an awareness of the system requirements and architecture.
Plugins tend to be focused on providing narrow and sometimes esoteric functonality. And although creating a plugin may require more knowledge of the underlying Joomla! framework, the Joomla! system includes plugin templates that make the creation of new plugins an easy task.
In this chapter, I take you through the key elements and anatomy of components, modules, and plugins and discuss how to approach customizing them to suit your ...