# How can I set up a two part sign up form, where first submit leads to second with more fields?

My client doesn't want to scare potential subscribers off with a long form.

Is there a way to capture, and save, the name, email and phone of a subscriber and then redirect this user to a form that collects more information (like address, employer etc..)?

I could hide half the form with javascript but this means the first half wouldn't be saved.

I was thinking I could use the redirect field to redirect to a new form but then this information wouldn't be added to the same contact.

I'm using civiCRM with wordpress.

Edit: I am looking to do this without the user having to create an account (with username, password). Just two profile forms that follow on from each other and are saved to the same contact.

• Finally worked out how to do it with a bit of a hack: Use javascript to autofill the username and password of the create account part of the form with timestamp. Hide these fields with CSS. Use the same form on both pages but make one 'create' and the other 'edit'. Then, on the first page, hide the fields of that I want to be displayed on the second page with CSS and vice versa. – thomas jaunism Apr 15 '15 at 3:02

To implement this purely in CiviCRM with WordPress:

1. Create a standalone profile form to collect name, email, etc.
2. Create a second profile form to collect other information. If you want it to record an activity, you can set it up as a "Petition" form. If you want it to register the contact for an event, embed it in an event registration page.
3. Back to the first profile, edit and click the "Advanced Settings" tab at the bottom - set the "redirect url" to the public url of the second form.
4. Create a page or post in WP, and click the CiviCRM button to insert a shortcode for the first form.

Note that users must be logged in for Civi to already know who they are on the 2nd form. You have 2 options with this:

1. Users are already logged-in prior to filling the 1st form
2. On the 1st form, (also under "Advanced Settings") you can have Civi create a user account for them.
• Thank you for your help! I can create two profile forms and get the 1st form to link to the second one. However, They only seem to create to separate entries under contacts. One has the name, email, mobile. The second only has fields of the second form. I have checked 'account creation required' on the first form but it doesn't seem to be creating an account as the forms aren't linked in any way ? Thanks for your time! – thomas jaunism Apr 12 '15 at 23:19
• The user ought to become logged-in after filling the 1st form. Ensure the link to the 2nd form is in "edit" mode. e.g civicrm/profile/edit?gid=... – Coleman Apr 12 '15 at 23:57
• Thanks! I think I understand what you mean. But I'm redirecting the user to a WP page with the civicrm shortcode of the second form. [civicrm component="profile" gid="15" mode="edit"]. I changed it to mode 'edit' but the id of the second form (15) is different from the first (14) and it doesn't update the same contact. Does it not need to be editing the first form? – thomas jaunism Apr 13 '15 at 2:10
• Sanity-check: when you are logged in, and you view the 2nd profile, it ought to be pre-filled with your data. Is it? – Coleman Apr 13 '15 at 12:28
• Yes it is. But it still creates two separate entries when I'm not logged in. I guess it's not logging that user in as it creates the entry? Under advanced settings on the first form I've checked 'account creation required'. And on the second form I have checked 'no account create option'. – thomas jaunism Apr 13 '15 at 21:44

If you are using Drupal with your CiviCRM install then you can use the Webform CiviCRM Integration module (module; wiki with instructions). You can make it a multiple page form and under Webform > Form Settings > Advanced on the form, there is a checkbox for "Automatically save as draft between pages and when there are validation errors: Automatically save partial submissions when users click the "Next" or "Previous" buttons in a multipage form or when validation errors prevent form submission."

• I'm using Wordpress! sorry I should have mentioned that. Anything similar with WP you know of? – thomas jaunism Apr 10 '15 at 5:53

Gravity Forms does this. I believe Arete Imagine has built a Gravity Forms integration plugin for CiviCRM, but I don't think it's seen a public release yet. I also believe they are planning on charging for the plugin. The best way to find out may be to contact them.