What is the difference between module, plugin, and component in Joomla?
Although they are commonly mistaken, the component, module and plugin are three totally different parts of Joomla that make your website function the way you want. In this tutorial, we would like to tell you more about the difference between a Component, Module and a Plugin in Joomla.
Starting with the Joomla Component, you may think of it as a mini application that can be placed inside of your Joomla’s website. Just like any application on your device(PC, Laptop, Tablet, Phone, etc..), the component will help you to perform different tasks and actions. Most of the components have a part in the administrator area of the website, where you can configure and manage them, and also have a part that is visible to the visitors of your website.
Components can be used to install a forum, blog, contact form, etc.. Once installed, you will find a few pre-installed Components in your administrator’s dashboard.
On the other hand, the Module in Joomla can be considered as a widget that enables functionality options along with input and output storage to the website. It can be a search box, login module, a custom module that comes pre-packaged with a component, or it can just be linked to a static HTML code.
Once logged into your Joomla administrator’s dashboard you may find your Modules from the menu located on the left hand side of the home page.
Last but not least, a Plugin in Joomla is mostly used to manage and trigger events and may also change the functionality of the same depending on its type. Such an event might be for example changing the name of the website. Usually the plugins are not displayed directly to the users, but are doing their work in the background.
They can be found under the “Extensions” dropdown menu on top of your Joomla’s administrator dashboard.
Having all of this in mind, we may conclude that in Joomla, the Plugins and the Modules are more or less part of a Component. They add to the components, and make your website easier to manage and have the desired functionalities.