WordPress Forms
Now Reading
How to Build a Custom Registration Form in WordPress

How to Build a Custom Registration Form in WordPress

updated by M. K. SafiMay 2, 2012
by M. K. SafiJanuary 29, 2012

The default WordPress registration form is too simple. If you’re developing a community driven or a membership site, you’ll certainly run into limitations. Luckily, WordPress is flexible.

There are several solutions for creating custom registration forms. But my favorite solution is using Gravity Forms plugin because it provides an easy, yet very powerful and flexible way, to create a registration form—and not just one. With Gravity Forms, you can create different registration forms to serve different purposes on the same site!

In this easy to follow tutorial we’ll implement only one custom registration form and place it on our site. You can then tweak these steps to tailor your forms to your own needs.

(Note that you will need the “Developer license” of Gravity Forms, which includes the User Registration add-on. Lesser licenses don’t have this capability.)

The custom registration form that we’re about to build can be styled to look like anything you want, but here’s the one that I built.


Register with Boston Employment Agency

The submit button on this demo form is disabled intentionally. However, when a user submits an actual registration form, it’ll be up to you what happens next.

You can display feedback that the registration is complete. You can send email notification to the user and/or the administrator. All depends on your settings.

An account for the user will be created in the back-end, but the custom fields, such as phone number and resume file will not be displayed in the user’s profile unless you implement some custom code to display them. They will, however, be displayed in the entries list of Gravity Forms.

It’ll be something like this:

Outcome of registration form

So, let’s create this form.

Getting Started

First, have Gravity Forms installed and activated. Next, in WordPress admin, go to:

Forms → New Form

New form

Make the General Form Settings

First, you’ll wanna adjust the general form settings. You do that by clicking on “Form Settings” at the top.

Give your form a title and a description.

Then go to the “Advanced” tab and configure the form submit button, its label, and whether it’s a standard button or an image. And adjust the rest of the settings as you see fit. Every field in Gravity Forms has a little clickable question mark icon next to it that explains what the field does.

Settings of a new registration form

Inserting the Registration Fields

A typical registration form should have fields for name, email, username, and password. We’ll also add phone number, website, areas of interest, and resume file. Adding these fields to your form with Gravity Forms is easy.

Go to the Advanced Fields box, and add:

Advanced fields for the registration form

For the username and areas of interest we’ll use Standard Fields. From the Standard Fields box, add:

Standard fields for the registration form

After inserting these fields, you can rearrange them by dragging them around.

Most of these fields are self explanatory and easy to deal with. You can click on each one to edit its properties to your liking.

Two of these fields require a bit more attention: the file upload and checkboxes. We’ll use the checkboxes as areas of interest. I have three of those: creative, information technology, and business. I just have to put these values in and and change the field label.

Checkboxes in the registration form

For the file upload field, you’ll have to specify the accepted file types. Because in my example I’m expecting to receive resumes, the accepted file types are doc, docx, and pdf.

File upload in user registration form

With that, we’ve actually built the form. Now we have to tell Gravity Forms that this is a user registration form.

User Registration Form Add-On

In Gravity Forms, when you activate the User Registration add-on, an additional menu with the same name will become available. You can access that menu by going to:

WordPress admin → Forms → User Registration

In that screen, you can select which of your Gravity Forms is a registration form. So, click on Add New.

Add new registration form

In the next page, select the form you just built from the drop down menu. Doing that will take you to the page where you link the WordPress user registration attributes with the fields in the form that you’ve just created.

Here’s how I linked my form fields with WordPress user registration fields:

WordPress user registration fields

The values in the left column represent the data that will be stored in WordPress and the values in the right column represent the data that the user provided in the form.

Notice how Gravity Forms allows me to specify the “Role” that will be given to those who register using my form. This allows me to create different forms for different roles. I can then place those forms on different pages on my website and refer people to the appropriate form, based on the role that I want them to have.

Displaying the Form Publicly

The beauty about this form is that it can be inserted any where on your website—a post, a page, the sidebar, you name it.

You just have to know the shortcode for the form, which is something like this:

[gravityform id="7" name="Register with Boston's Employment Agency" ajax="true"]

If you don’t know the specific shortcode for your form, don’t worry. You can get it from the form insertion button on the WordPress post editor.

Form insertion

Now, you’re ready to create a customized registration form in WordPress and start receiving applications with rich content. If you have questions or suggestions, let’s talk about them in the comments!

What's your reaction?
Wink It
Kill It
About The Author
Profile photo of M. K. Safi
M. K. Safi
  • ciro
    May 22, 2014 at 3:40 pm

    hi dear, i am looking for more clarification. does exist any possibility to add some immages in the registration form?!? for example you have to select one of the multiple choise you can add some immages: for example if you havo to chose to have a car or a bike i would like to add the immages of the car and the motorbike.

  • Didier
    September 20, 2013 at 2:46 pm

    Hello, thank you for sharing!
    I was looking for something like that and your contribution helps me a lot. However I have some doubts.
    What I want is, when a new user registers, to display the fields to fill up regarding the role it will have.
    For exemple, the user first chooses (radio button) if he registers as a student or as a teacher. I know that Gravity Forms allow conditional logic, so I guess I can show/hide sections of the form depending on the chosen role, right?

    You said that “An account for the user will be created in the back-end, but the custom fields, such as phone number and resume file will not be displayed in the user’s profile unless you implement some custom code to display them. They will, however, be displayed in the entries list of Gravity Forms”, so that’s OK for me.

    I also want those users to able to update their informations. I know I can code a page for users to update their information (wordpress user_meta) but will they be updated in the entries list of Gravity Forms? In short, do the Gravity Forms and wordpress share the same user datas?

    Thank you.

  • October 2, 2012 at 7:25 pm

    how to make the edit your profile with this?

You must log in to post a comment