Welcome to Joomla!

John's tips to help you build a great, Joomla! powered website

What is the difference between a component, a module and a mambot / plugin ?

The question was:

I'm novice in Joomla and I need clarification about the terminology. For example some extensions have different types, such as component, plugin, module, language. I don’t actually understand, what type of extension I have to download and install.

I need to install FacileForms, but I’m not sure, what type of extension I have to download, FacileForms Component, FacileForms Mambot or FacileForms Module.

Any stuff (explanations, links, references) will be greatly appreciated.

So, I tried to give my explanation:

My reply, part 1

Let me see if I can help a bit here.

A component always displays its results in the "mainbody" area of your template.

A module displays its results outside of the "mainbody" ... usually along the side, top, or bottom of the mainbody.  (Actually, I guess that about covers everything, doesn't it!)

A mambot (new Joomla terminology is "plug-in") adds capability of some kind to components and modules.

So, for example, with Facile Forms, the component would display a form that you have created in the "mainbody" area of your site, and would be generally called from a menu or a link in some article.

The FacileForms module allows you to publish a form in a module "position" ... outside of your mainbody.

The mambot allows you to embed a form within an article or other content item.

Now, here is a quote from the FacileForms documentation that may help a bit more:

There are 3 ways to run forms:

  • Run the form in the main area of your frontend, the component space. This is done by creating a menu item of type component.
  • Run the form in a module position. This is accomplished by editing the default Facile Forms module, or making a copy of it and adjusting it. The optional Facile Forms module must be installed to run forms in module space.
  • Embedd the form into an existing content. This is done by entering a meta command (a tag) into the content at the place where you want the form to be displayed. The optional Facile Forms mambot must be installed and published for this method.

Now, generally, when you install an extension like FacileForms, you would generally install the component, and the module, and the mambot.

Some Joomla extensions will actually install all 3 at the same time for you (if they have all three).  That way, all of the capabilities of the extension would be available to you as you develop your site.

I hope that helps, at least a bit!

My reply, part 2

Well, after this, I got a very nice thank you note from the person who asked the question.   I replied:

Well, I'm glad it helped you.

I remember when I was just getting started with Joomla, that exact concept (what's the difference between a component, module, and mambot / plug-in) was confusing.

And I read an explanation about like what I just gave you, and something clicked.

It really, really is a key distinction to get ahold of, and it really helps you "get your head around this Joomla thing."

Many times I'm helping people with their site, and they ask, "How to I change the title of this?"  or "How do I move the login box from the bottom of the screen to the right side?" or stuff like that.

And, I always begin the conversation with, "OK.  Let's think.   Where would you find the settings for that?   Is it in the mainbody?  No, so that means that it is a ...?   Right, that means it is a module?

And where do we configure modules?   Right ... in the Module Manager."

Once we go down that path a few times, it starts to make a bit more sense.