Joom-Profile provides custom field sets to enhance Joomla user profile. This article will describe the all available fields in Joom-Profile that can be used to extend the core Joomla profile.

List of all custom fields available for Joomla profile.



UserName field is being used for mapping the core Joomla UserName field with the Joom-Profile. The value entered by user in username field will become username for the Joomla website. Recommended Create a single UserName type field for whole website.


The email entered in UserEmail field by user will be used to as registered email for website. The UserEmail field an accept data as email and purpose of this field is to map the field with core Joomla registration email field. Don't use this field for getting alternate email address for contact purpose, for this we have another field named as Email.


The Password field is used to accept password for your Joomla website. As UserName and UserEmail it is also a core field used for Joomla registration.


The Email type field can be used to accept the data as email type. It is a general field which you can use to accept the alternate email address of you user.


Image field is general field for accepting images from user. This field can also be used to accept image for user profile or avatar.

Parameters for image fields :

Allowed Extension : Here you can specify the allowed extensions for your image to be uploaded. As the image field is technically a file field so restricting only images to upload is a good practice to allow only images. Example .jpg,.jpeg,.png,.tiff etc.

Exclude Extension : Here you must specify to exclude .php,.js,.html,.exe etc. to restrict user so they cannot upload script files on your website.

Default Image : Here you can specify the default image location, this image will be used as default if user doesn't upload any image. The default image at loaction media/com_joomprofile/images/default.png can be replaced to change it.

Width and Height : You can specify the width and height of the uploaded image when it will be displayed on website. You can leave it blank if you don't want to specify. We recommend specify the width and height 140px when you use this field to create an avatar field.


DatePicker is a field type to create date field. You can use this field to accepts the date from users. For example Date-of-Birth, marriage anniversary date, date of joining etc.

Parameters for date-picker :

Display Format : Display format is used to set order or format of display for example

To Display Enter Value
15 Jul 2014 d M Y
Jul, 15 2014 M, d Y
Wed, 15 Jul 2015 D, d M Y


Using File field you can create a field that can accept the files from users.

Parameters for files:

Allowed Extension : Here you can specify the extensions allowed to upload. like you want to accept research report from student you can allow .pdf,.doc,docx,.ppt etc. or if you want to accept the code or zip file then can allow .zip,.tar.gz etc

Exclude Extension : Here you must specify to exclude .php,.js,.html,.exe etc. to restrict user so they cannot upload script files on your website.


Text type field can be used to create field that accept value as text, for example Name, Father's Name, Education Qualification, Occupation etc.

Parameters for text:

Default Value : You can provide a default value to the field here.

Minimum Length & Maximum Length : You can specify the number of character a user can enter in minimum and maximum length.


TextArea is a field type similar to the Text but the difference is, this field allows user to enter long text like short Bio-info, about me etc. The limitation of textarea field is 255 character. If you want to accept the text more then 255 character then you must consider the below Editor field.

Parameters for textarea:

Default Value : You can provide a default value to the field here.

Minimum Length & Maximum Length : You can specify the number of character a user can enter in minimum and maximum length.


Editor type field is an extended form of textarea. It allows you to accepts long paragraphic text with your desired maximum character limit. The other important difference is, this field also allows user to enter the HTML tags also, means a user can enter the content in HTML form and this field will accept the content as HTML also.


Address type field is used to create group of fields that accepts address from user. When you create this type of fields it will create a group of input-box that will accept the Address Line, City, Zip Code, State and Country. You can use Google map for this also.You can also select what iformation you want to ask like city, zip code, state etc from users.

Parameteres for textarea:

Google MAP API Key : Enter the Google Map API key, You must use this key if you think your site will request more than 24000 API to Google MAP API. Otherwise leave it empty.


Numeric type field will create a native HTML numeric field. Here you can specify the number of digit and maximum, minimum value a user can input. For example to ask mobile number from user you can configure it as Show Fields as : Textbox, and Minimum, Maximum Length to 10 now it will accept the value in 10 digits numeric only.


Select type field is being used to create a drop-down select-box where you can ask user to choose options. Example of select box is


Radio type field is being used when you want to ask user any question and only one option is to be selected. Like answer in Yes or No. For Example

Gender : Male Female


Checkbox field is similar to select box which allows multiple option selection. You can use this type of field to create ask users about there interest in topics. For example

Interest : Business Technology Sports


Terms-of-Service field is a field which allows you to ask users to accept your website Terms of Services policies before proceeding next. You can write your policies in an article and can choose that article during creation of field. This will create a field that user has to check-mark before registering on your website.


reCatcha field is being used to allow secure and spam free registration on Joomla website. reCaptcha is a Google project which is used for spam protection. Joom-Profile 1.2.5 now has ability to use this feature for securing registration process.

Parameters for reCaptcha:

Site Key : The site key is used to display the widget on your site.

Secret Key : The secret authorizes communication between your application backend and the reCAPTCHA server to verify the user's response. The secret needs to be kept safe for security purposes.

Generate the Site and Secure Key for reCaptcha


Here we completes the all available fields in Joom-Profile. We would like to add more fields. Please suggest us or post your requirement on our  or contact-us.

Registration validation is a joomla plugin which validates user credentials while registering at your site. The default joomla validation is not sufficient enough to handle various cases and also it does not validate all the data prior to form submission.

What data does this plugin validates?

This plugin mainly validates the basic fields of the registration form that are username, email and password.

In current joomla registration process the validation is very limited and even some of the validation takes place after registration form submission. For user this becomes very tedious to fill the form again and again.

1. Validation on Username

  1. User must fill this field since it is a required field.
  2. Provided username must follow the alphanumeric standard and does not contains any symbol.
  3. Provided username must not exist in the system. This is completely ajaxified.

2. Validation on Email

  1. User must fill email field.
  2. Provided email is a valid email address
  3. Provided email must not exist in the system. This is ajaxified.
  4. Check confirm email field for correctness.

3. Validation on Password

  1. User must fill password field.
  2. Checks the password strength of the provided password. This plugin does not apply any extra password strength to the registration system. Default password strength of Joomla registration is considered here.
  3. Check confirm password field for correctness.

How to use registration validation

This plugin is very easy to use as there are no extra configuration needed to run the basic validation.

  1. Download this plugin from URL
  2. Install the downloaded plugin to your Joomla site and enable this from plugin manager.
  3. Now check the registration process.

On every validation error user will see proper error messages.

Like on providing existing username below message will appear.

When incorrect password filled in confirm password field :

Registration Validation Pro

This enhanced version will allow you to place custom validations in the registration process. Like apart from checking required and valid email you would like to allow registration for selected domain only say gmail and yahoo then you can impose this restriction in the registration using using the regular expression feature.

How to inject custom validation

  1. Go to plugin manager and open registration validation pro in edit mode.
  2. In this screen you will find three parameters which you can use to apply your custom validations on username, email and password. Here you need to put the regular expression for your validation.


Suppose you would like to allow the registration only for gmail email address or yahoo then in the Email Regex field place this regular expression ($|$) to apply this validation.

After this, when any user tries to register with email of any other domain (other than gmail or yahoo ) then proper error message will be displayed.


Similarly you can apply custom validation on username and password.

How to change error messages?

All the error messages that registration validation and registration validation pro plugin displays to user can be changed by overriding its language file.

All the language tokens of Registration Validation plugin are available in the file en-GB.plg_system_f90_registration_validation.sys.ini and of Registration Validation Pro plugin are in the file en-GB.plg_system_f90_registration_validation_pro.sys.ini located at administrator/language/ directory.

For language overriding you can refer Joomla Documentation.

Joom Profile is the best tool for managing users' profile and as well as for searching them. You need to use following steps to enable user searching at your site. Let discuss them.

Configure Searchable Fields

  1. Goto Joomla admin panel => components => Joom Profile => Usergroups.
  2. All the usergroups will be listed there. You need to edit all the usergroups for which you want to setup searchable fields. So click on any usergroup.
  3. There is a field Not Searchable Usergroup. you can select usergorup(s) here, so that users of these usergroup will not be listed in search result if any user from editing usergroup makes any search. Like in the below screenshot Public users will not be able to see users from Super User and Administrator usergroup. You need to cross check your setting when any user can have multiple usergroup. In this case if any usergroup allows user to view users, then users will be listed.
  4. There is a select box displayed which will list all the fields you created. You can add the field(s), which should be searchable for that usergroup. You can also set which fields need to be shown on mini profile of user in search result.

    Searchable field configuration for Joomla


Front-end Searchability

  1. Create a menu link for Search, so that user can search by going through that link. You can apply the access level to menu as you want. Like you want to allow only registered user can search, then you can ass access level "Registered" to this menu and do not configure any field for "Public" and "Guest" usergorups.
  2. List of searchable fields will be displayed here. All the fields are calculated according to user's usergroup who is visiting, whether user is logged in or not. If user is not logged in then usergroup "Public" and "Guest" (if available) will be considered. If user is logged in then user's usergroup will be considered.

Search result with mini profile in JoomProfile


<< Intro to Joom Profile  Joom Profile : Field Accessibility>>

Joom Profile has some accessibility option for each field and these  options are

  1. Registration : This setting allows you to display any field in registration process or not.
  2. Visible : Through this option you can hide the value of any field on any user, when his/her profile is being used by any other user.
  3. Editable : You can set, if any field is editable by the user or not. Off-course admin will alway be able to fill the detail in that field from admin panel.
  4. Required : If field is required to fill, then you can set this option to Yes. Otherwise put it off.

Above options can be used to configure how a field will be displayed. Let discuss the step to do this.

Accessibility Control Configuration

  1. Go to Joomla Administrator => components => Joom Profile => Fieldgroups.
  2. Edit the fieldgroup for which you want to configure accessibility of fields.
  3. Go to "Fields" tab, here all the field will be listed (added fields) and you can add more fields. After adding field, accessibility options are displayed against each field. You can opt the setting as you want.
  4. And its done. Go to front-end and check the result of respective configuration.


Note :  You can configure different accessibility for one field for different fieldgroup. Like field A can have different accessibility for fieldgroup A and fieldgroup B.


<< Intro to Joom Profile Joom Profile : Searching>>

Assign Usergroup Timely plugin allows your website to have power of upgrading users access level by changing their user-group in timely manner. Like initially user is registered at your website, he will be assigned to UserGroupA. Now you want that user should be upgraded to new user-group that is UserGroupB after 1 week (7 days). This is perfectly possible with this plugin. You can assign unlimited number of user-groups. Lets have some more detailed description of How it works?

1. Install

First step of using any extension for Joomla! is installation. Installing this plugin is very easy. You just need to download it and install it from your websites' Extension Manager. You must have active subscription to download this plugin from our website.

2. Configure

  • Mail To : This option allows you to enter email id(s), to which an email will be sent whenever usergroup (configured) is changed for any users. You can enter multiple email ids by separating them with comma(,).
  • Mail Subject : You can choose your own subject for email which will be sent above configured emails.
  • Mail Content : You can also decide the content of email to be sent. You have some tokens to use in content. The token will be replace with there actual value when it will be ready to send as email. There are following tokes to use.
    • {AUT_USER_USERNAME} : It will be replace with username of user, whose usergroup is getting changed.
    • {AUT_USER_NAME} : It will be replaced with name of user.
    • {AUT_USER_EMAIL} : This token can be used if you want to use email id of user in email body.
    • {AUT_FROM_USERGROUP} :  It will be replaced with the Usergroup Name from which user is getting removed.
    • {AUT_TO_USERGROUP} : This token will be replaced with Usergroup Name into which user is going to be added.

    Grid screen of fields

  • Cron Type : Cron Job is required for the automatic assignment  of usergroups. If you don't have option to use crontab on your server, then need not to worry we have solution for you.
    • Automatic : If you can't setup cron job on your server then select this option. We'll assign usergroups automatically without any issue.
    • Manual : If you have option to use crontab and know how to configure it, then need to trigger the url "" . You can select the frequency according to you choice.
  • Cron Time : If you have selected "automatic" in above option, then this setting will take effect. You can enter the time (in minutes) after which next cron should execute.It depends on number of user registration on your website.
  • Automation Levels : This is the most important part of this plugin. You need to configure automation levels. You can create unlimited number of levels. Each level has following parts.

    Grid screen of fields

    • Changes usergroup from : You need to selected usergroup from the options. This automation level will be applicable when user has this usergroup.
    • To Usergroup : Selected usergroup will be assigned to usergroup, if user has the above selected usergroup.
    • After : You need to enter number of days after which user will be removed from usergroup selected in Changes usergroup from and assigned to usergroups selected in To Usergroup option.
  • Save : In case if Joomla toolbar save button does not work, use this button.

3. Limitations

This plugin will not work correctly if any user have more than one usergroups, which has access levels.
Currently it will send email to configured email ids. User notification is in our near future roadmap.


Cron Job Starts