Apart from your homepage, the contact form is the most essential piece of your website. How else can people reach out to you after landing on your site?
When it comes to less is more, Contact Form 7 takes the cake. CF7 is a minimalist form builder and it’s free. With its phenomenal number of downloads (5+ million), it is the most popular contact form plugin.
In this article, you’ll learn how to use the Uncanny Automator Pro plugin to create a user registration form with Contact Form 7.
Creating a registration form requires a recipe that can add a new WordPress user. This feature is available on the Pro and Agency pricing plans.
There are two parts to the process. The first part is to build our form so we can gather the registration input. The second is to make our recipe (triggers and actions) that will register the user in WordPress.
Build the form
1. From your /wp-admin/ dashboard, navigate to Contact > Add New.
2. On the Add New Contact Form page, name the form “CF7 – Simple Registration Form”.
3. In the Form editor tab, replace the default Your Name field with two fields: a First Name field and a Last Name field.
4. Keep the Your Email field.
5. Delete the Subject and the Your Message fields.
6. Change the submit button to “Register”.
Your form should look similar to this.
7. Click Save to save your changes.
Now that you have a form, we can add it to a page using the shortcode. Then, we’ll see something like this.
Nice work! We’re ready to move on to the second part.
Create the recipe
1. From your wp-admin dashboard, navigate to Uncanny Automator > Add New.
2. Select Everyone for the recipe type.
This needs to be a recipe for everyone because we want to create a new WordPress user. Logged-in users cannot create new users.
3. Click Confirm.
Learn more about Recipes for Everyone.
4. Name your recipe “Simple registration form using CF7”.
5. Select Contact Form 7 for the integration.
Note: We can only have one trigger for a recipe for everyone.
6. For the trigger, select A Contact Form form is submitted.
7. For the form, choose our CF7 – Simple Registration Form that we made in part 1.
8. Click Save.
9. Next, select New User.
You should now see a form displaying the standard WordPress user account fields: first name, last name, email, username, display name, password, and roles.
For the first four fields, we want to grab the data from our CF7 form. Let’s do the first name together.
10. Click on the asterisk icon (*) on the right-hand side of the First name field.
This is the token selector. Tokens act like handles to the data in the form. Tokens will get filled-in later with actual values when the form is submitted.
So, for the First name field for our new user, we want the First Name token from our CF7 form.
11. Select CF7 – Simple Registration Form that’s highlighted in blue.
12. From the dropdown menu, click on First Name. You’ll see the first name token appear in the text field above.
Follow the same steps for the Last name and Email fields except you’ll want to select the corresponding token for each. For example, choose the Last Name token for the Last name field and the Email Address token for the Email field.
We want our usernames to be the same as the email.
13. So, for the Username field, select the Email Address token.
14. Leave the Display name blank.
For the password, we want the user to reset it before logging in for the first time. We’ll get to that in a bit.
15. So, leave the Password field blank too.
16. Keep the default Subscriber selected for the Roles field.
17. Click No for the Log the new user in? field.
18. Click Do nothing for the What to do if the user already exists field.
19. Click Save.
When you’re done, your new user data form should look like this.
OK. We created our form, did our trigger, and we just finished defining our new user fields. Now, on to our next ingredient—the confirmation email.
20. Under the Set user data section, click on Add action next to the lightning bolt icon.
A set of available integrations will be displayed. We’re going to have WordPress handle this.
21. Select WordPress from the set of integrations.
22. In the dropdown, select Send an email.
We’ll get another form to fill-out. This time it’s an email template.
23. Keep the Send an email to at the top and the From and To fields set to their default values.
24. Add your Subject.
25. Compose your message.
For the Body, we get a text editor complete with a token selector icon to work with. That means we can pull in data from WordPress and our CF7 form to compose a personalized message. In my example below, I’m grabbing tokens to personalize the first name and the username. Then, I include a reset password link courtesy of WordPress.
26. Click Save.
Our last step is to make our recipe Live. We’ll need to click on all three Draft toggles displayed on our recipe page.
27. Click on each toggle to make them live.
The first one is in the trigger block at the top. The second one is for our WordPress email towards the bottom of the Actions block. Finally, the third one is for the entire recipe and it’s located in the right sidebar under the Recipe details.
Congratulations! You now have a user registration form that will:
- Create a new WordPress account.
- Send a personalized confirmation.
- Provide a password reset link.
Here are the important things we covered:
- Creating a simple CF7 form that takes a First Name, Last Name, and Email.
- Creating a recipe for everyone in Uncanny Automator that’s triggered when the CF7 form is submitted.
- Setting up the recipe action to automatically create a new WordPress user.
- Crafting a custom email autoresponder that sends the account details to the new user.
This is just a simple yet powerful demonstration of how Uncanny Automator can supercharge your contact form. Check out our in-depth blog post on creating registration forms with free form plugins to learn more.
Once the basic user registration form is in place, you can add additional actions to the recipe and even add extra fields to the form to capture additional details for the user. Using the Set user meta WordPress action, you can add form data directly to the user’s WordPress profile.