What is the difference between Joomla components, modules, extensions and plugins?
A plugin is a kind of Joomla! extension. Plugins provide functions which are associated with trigger events. Joomla provides a set of core plugin events, but any extension can fire (custom) events. When a particular event occurs, all plugin functions of the type associated with the event are executed in sequence.
Joomla! modules are lightweight extensions or “widgets” that can be inserted into a page to display specific types of pre-configured content. Typical examples include the login module, latest news module and banner module.
An easy analogy would be that Joomla! is the operating system and the components are desktop applications. Created by a component, content is usually displayed in the center of the main content area of a template (depending on the template). Most components have two main parts: an administrator part and a site part.
In general, module tends to refer to larger bundles. There's often a set of interfaces and the module tends to be able to stand on its own. Components on the other hand tend to be smaller bundles of code, often smaller than a full class. By their name, they tend to be a component of something larger.
Plugins
Plugins enable you to execute code in response to certain events, either Joomla core events or custom events that are triggered from your own code. This is a powerful way of extending the basic Joomla functionality.
Components
Components are the main functional units that display in your template, like the content management system, contact forms, Web Links and the like. They are usually displayed in the center of the main content area of a template (depending on the template).
Modules
A more lightweight and flexible extension used for page rendering is a module. Modules are used for small bits of the page that are generally less complex and able to be seen across different components. Sometimes modules are linked to a component such as the core latest news module.
Extensions
Components, languages, modules, plugins and templates collectively known as Extensions.
Quickstart tutorial for free.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With