Difference between components, modules, extensions and plugins in Joomla

17,549

Solution 1

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.

Solution 2

Components

A component is a separate application. You can think of a component as something that has its own functionality, its own database and its own presentation.

So, if you install a component, you add an application to your website. Examples of components are

  • a forum
  • a newsletter
  • a community system
  • a photo gallery

You could think of all of these as being a separate application. Each of these would make perfectly sense as a stand-alone system.

A component will be shown in the main part of your website and only one component will be shown. A menu is then nothing more than a switch between different components. You can compare it a bit with your windows taskbar, where you see a tab for each open application.

Modules

Modules are extensions which present certain pieces of information on your site. It's a way of presenting information that is already present. This can add a new function to an application, which was already part of your website.

Think about

  • latest article modules
  • login module
  • a menu

Typically, you'll have a number of modules on each web page.

The difference between a component and a module is not always very clear. A module doesn't make sense as a standalone application, it will just present information or add a function to an existing application.

Take a newsletter for instance. A newsletter is a component. You can have a website which is used as a newsletter only. That makes perfectly sense. Although a newsletter component probably will have a subscription page integrated, you might want to add a subscription module on a sidebar on every page of your website. You can put this subscribe module anywhere on your site. You'll probably agree with me that a site with just a subscription module and no actual newsletter component would be rather ridiculous.

Plugins

They used to be called mambots in Joomla 1.0.x, but since Joomla 1.5.x they're called plugins. A plugin is a function which is performed on a part of Joomla before this part is shown. This part can be on content, on the editor, on the complete system, etc. This might seem a bit abstract, but you'll understand it with an example.

Let's take one of the plugins of Ulti Joomla as an example: Ulti Reflection. This is a plugin which can make a reflection of the images you use in your content articles. To use this you just have to put something like inside your content. Before the content is shown to the user, the Ulti Reflection plugin will scan the content to find the {reflection} tag. If it finds the tag, it will replace the tag with the image and its reflection.

Be carefull not to put to many plugins one your website, because some of them can really slow down your site.


If the difference between the three types of extensions is still not completely clear, then I advice you to go to admin pages of your joomla installation and check the components menu, the module manager and the plugin manager. Joomla comes with a number of core components, modules and plugins. By checking what they're doing, the difference between the three types of building blocks should become clear. You can also check out the official Joomla extensions page. Browse through the extension categories and you'll be amazed about the extension possiblities you have for your site.

Solution 3

Modules and components are displayed on a page.

Plugins operate behind the scenes and can do a multitude of things, like replacing content with other content, perform searches, perform login/logout functions, or anything really tricky that you can imagine.

There can only ever be one component on a page. When you choose menu items, you are actually choosing the component that you wish a page to display. The variables for the component are stored once (in the database), so you can't have multiple instances of the component!

On the other hand, modules are added multiple times. You can have many modules on the one page. In fact, you could have 100 instances of the same module on the one page. The variables for a module are stored against each instance. (in the database).

This is why joomla templates have one place holder for a component, and many place holders for modules.

A module can be added to an individual page (menu item) , or seleceted pages, or all pages.

Remember that a menu item is indeed a component choice. Each menu item does store variables in the database, so it is possible to feed the component display details. E.g. what page id the content component is to display.

In the back end, components can have many backend settings and functions, and "do" many more things than a module.

  • Examples of a component are:

    • com_content (displays articles...)
    • a bulletin board
    • a forum
    • a sitemap
  • Examples of a module:

    • a countdown clock
    • top 10 most read content
    • a poll
Share:
17,549
Bryan
Author by

Bryan

Updated on June 15, 2022

Comments

  • Bryan
    Bryan almost 2 years

    What is the difference between Joomla components, modules, extensions and plugins?