Saturday, May 26, 2012

Additional Fields in Joomla Registration Form

Imagine this situation: You have a client who needs a website with user management, but he needs to collect some specific information about his registered users. You would probably offer him/her Community Builder, JomSocial or similar third-party component? Don't do that! Here are two most important reasons:
  1. Those compoents are great but probably perfectly unneeded for your client. Beside training him about Joomla, you would need to train him how to use those complex components.
  2. If you are working on a website based on Joomla 1.6 (or later), there's a nice, but unfortunatelly perfectly hidden feature that allows you to add custom fields in Joomla registration form.
I bet once you reveal this secret, you will use this feature in over 50% of your Joomla sites! Here's is how the registration page looks by default. I know you have seen this form so many times:
Now, let's add some fields there! Go to the Plug-In Manager (Extensions > Plug-In Manager) and look for a plugin named as User - Profile. This plugin comes with Joomla by default, so you don't need to install anything. However, plugin is disabled by default, so you must enable it first. This single click is enough to change Joomla registration form dramatically and add 12 useful fields:
In User - Profile plugin parameters you can disable some of those fields and make them optional or mandatory. Unfortunatelly, there are no options to edit fields or to add and remove fields without hacking the plugin's files. I would like to see this in one of the future Joomla releases. But in most cases, what we have so far will be enough. There are 12 additional fields that can be added to the registration form with a single click. They can be customized fairly easy. In example, if you don't want to collect information about Favourite Book, you can edit language file and change it to Favourite Movie, or something like that.

No comments: