Tassos Marinos Tassos Marinos Joomla Extensions

Create User Accounts with Convert Forms

Published in Convert Forms
Updated 08 Oct, 2024

Do you wish to enable user registration on your Joomla site effortlessly? Are you seeking a seamless way to create user accounts when individuals submit a form automatically?

You can easily design personalized user registration forms to gather specific user information. Whether you're looking to onboard new members, subscribers, or any other type of user, Convert Forms User Account Task simplifies the process, making it quick and hassle-free.

This guide will walk you through the steps to allow users to create accounts on your Joomla site without delving into complex coding. This straightforward setup ensures a swift process, enabling you to manage user registrations promptly.

    Requirements

    To use the User Account integration, there are a few requirements you need to meet, listed below:

    • Ensure you have Convert Forms Pro installed. You can easily upgrade to Pro if you're currently in the Free version
    • The "Convert Forms - Apps - User Account" plugin is enabled.

    Setting Up User Account Task

    To set up the User Account task and create new user accounts, go into your form, and follow the steps listed below:

    Select App

    From within your form, click on Tasks > CREATE YOUR FIRST TASK.

    Create First Task

    On the modal that will open, select the User Account task.

    Select PHP Task

    Select New Submission under Trigger and Create Joomla User Account under Action on the next screen, and click CONTINUE.

    Select PHP Trigger and Action

    Setup Action

    After you've set up the trigger, and action, it's time to set up the action itself and configure all available settings. We’ve outlined what each of these does below.

    Setup Action PHP Task

    Email Address

    The email address that will be assigned to the newly created user.

    Full Name

    The full name that will be assigned to the newly created user.

    Username

    The username that will be assigned to the newly created user.

    Password

    The password of the new user. You can either choose "Generate Random Password" or select any available mapping option.

    User Groups

    The user groups of the user. You can select one or more user groups for the new user.

    New User Account Activation

    Select the requirement for account activation.
    The available options are:
    • Use Global: It will use the option set in User Configuration Page.
    • None: The user account will be activated immediately and the user can log in straight away (even if their email address is invalid).
    • Self: The User will be emailed a link to activate their account before they can log in.
    • Administrator: The administrator will be emailed a link to activate their account before they can log in. Then all users set to receive system emails and who have the permission to create users will be notified to activate the user's account.

    Custom Fields

    Specify which custom fields you’d like to pre-populate when creating the article. A specific set of single and multiple-value custom fields are supported. You can also use Smart Tags.

    Add Conditional Logic

    Conditional logic makes it possible to run tasks only if specific criteria are met, like a user’s email address matching a certain domain, the user being associated with a certain Joomla User Group, or a form submission having a specific value.

    While editing the User Account task, go to the Setup Action step and scroll down to the Conditional Logic section to set up Conditional Logic. Here's where you define all the rules the task should meet to run.

    For example, let's say we need to create a new account, only if the email is coming from a specific domain: @domain.com.

    1. Click to enable the Run this task when certain conditions are met.
    2. Click Add Your First Condition.
    3. Select the Email field in the Trigger dropdown.
    4. Select Contains in the Operator dropdown.
    5. Enter @domain.com in the value. Replace this with your domain name.

    The condition should look like this:

    PHP Task Conditional Logic Example

    You can read more on Conditional Logic on the Working with Tasks documentation page.

    Activate Task

    The final step is to enable our task. To do so, click the toggle on the dialog’s top right corner, as shown in the screenshot below.

    Enable PHP Task

    Finally, click Save to save the task, close the dialog, and then click Save from the top right corner of the form builder to save the changes on the form.

    Congratulations! You’ve successfully created a form that will create new user accounts whenever the form is successfully submitted!

    How to populate custom fields

    The User Account app lets you create users while also filling in custom fields. You can populate fields that accept both single and multiple values, giving you more flexibility in managing your content.

    How to populate simple fields

    When creating a new Joomla user, you can now easily populate simple fields. Simple fields are custom fields that accept a single value. The custom field value can either be typed manually, or mapped to a form field entered by your users.

    The supported custom fields are listed below:

    • Text
    • Textarea
    • Radio
    • Calendar
    • Color
    • Editor
    • Integer
    • List
    • List of Images
    • Location
    • URL
    • User
    • User Groups
    • ACF Articles
    • ACF Convert Forms
    • ACF Country
    • ACF Currency
    • ACF Download Button
    • ACF Facebook
    • ACF Gravatar
    • ACF HTML5 Audio
    • ACF IFrame
    • ACF Module
    • ACF PHP
    • ACF Progress Bar
    • ACF QR Code
    • ACF Telephone
    • ACF Timepicker
    • ACF True/False
    • ACF Twitter
    • ACF Video
    • ACF WhatsApp Click to Call.

    Create Custom Field

    Let’s get started by creating a custom field under Users > Fields.

    Select the “Text” type, and set it’s name to “Movie Name”.

    Create User Single Value Custom Field

    Example #1: Mapping a Text field to a form field

    Within our form, let’s add a text field called “Movie Name” in which our visitors will type in the Movie Name.

    Create Single Value Form Field

    To populate the “Movie Name” custom field, head over to your form’s settings > Tasks > click to edit your User Account app, under the Custom Fields setting, click on the “Select Custom Field” area, and from the left-hand side select the “Movie Name” custom field.

    Select Single Value Custom Field

    After selecting the “Movie Name” custom field, we then need to specify the value of this custom field. In this case, we select the “Movie Name” form field which we just created.

    Select Single Value Form Field

    The final configuration looks like this:

    Final setup for Single Value Custom Field

    Now, whenever a visitor types in a movie name, it will automatically appear in the user settings, in the corresponding custom field that’s named “Movie Name”.

    Example #2: Mapping a Text field to a fixed value

    An alternative way to populate a custom field is by entering a fixed value instead of relying on the user input.

    To populate the “Movie Name” custom field, head over to your form’s settings > Tasks > click to edit your User Account app, under the Custom Fields setting, click on the “Select Custom Field” area, and from the left-hand side select the “Movie Name” custom field.

    Select Single Value Custom Field

    After selecting the “Movie Name” custom field, we then need to specify the value of this custom field. In this case, we set a fixed value by typing the text “Titanic”.

    Set fixed value for the single vlaue custom field

    How to populate list fields

    When you’re creating Joomla users, you can now easily populate list-type fields. You can either populate list fields by mapping them to a form field or by setting a fixed value.

    The supported list fields are listed below:

    • List
    • Checkbox
    • List of Images
    • User Groups
    • ACF Articles

    Create Custom Field

    Let’s create a Checkbox custom field that accepts multiple values under Users > Fields, by selecting the “Checkboxes” type, and name it “Colors”.

    Then specify the colors Red, Blue, Green, as seen below.

    Create Multi Value Custom Field

    Example #1: Populating a List field by mapping it to a form field

    Within our form, let’s add a Checkbox field called “Colors” in which our visitors will be able to select their desired colors.

    Each value must correspond to an option defined in the previously created custom field settings.

    Create Multi Value Form Field

    To populate the “Colors” custom field, head over to your form’s settings > Tasks > click to edit your User Account app, under the Custom Fields setting, click on the “Select Custom Field” area, and from the left-hand side select the “Colors” custom field.

    Select Multi Value Custom Field

    After selecting the “Colors” custom field, we then need to specify the value of this custom field. In this case, we select the “Colors” form field.

    Select Multi Value Form Field

    The final configuration looks like this:

    Final configuration for populating multi value custom field

    Example #2: How to populate a list field with a fixed value

    An alternative way to populate a list field is by entering the custom field value manually.

    To populate the “Colors” custom field, head over to your form’s settings > Tasks > click to edit your User Account app, under the Custom Fields setting, click on the “Select Custom Field” area, and from the left-hand side select the “Colors” custom field.

    Select Multi Value Custom Field

    After selecting the “Colors” custom field, we then need to specify the value of this custom field. In this case, we set a fixed value by typing the text “red, green”.

    Note that the fixed value we set must correspond to an option defined in the custom field settings. We can define multiple values by separating each value with a comma, as seen below.

    Set a fixed value for the multi value custom field

    How to populate advanced fields

    You may be wondering why we haven’t mentioned any advanced fields such as ACF - File Upload, ACF - Gallery, ACF - Map, etc…

    These custom fields don’t accept a single or multi value(comma separated) but an object as a value which makes it difficult to populate via the existing Custom Fields section.

    The complete list of custom fields that are currently unsupported are:

    • Media
    • ACF Address
    • ACF Chained Fields
    • ACF Countdown
    • ACF Email
    • ACF FAQ
    • ACF File Upload
    • ACF Gallery
    • ACF Map
    • ACF PayPal
    • ACF SoundCloud
    • Any advanced 3rd-party custom fields

    We are committed to improve the user experience of the Custom Fields section to support such advanced custom fields.

    Frequently Asked Questions

    Can I populate user profile fields?

    Unfortunately, updating user profile fields is not currently supported, but it’s on our plans.