Let’s say you have a site where you want to register two types of people. We’ll call them “Red” and “Blue.” Each of those forms is going to have some fields in common and some fields that are different for each signup form.
The first thing to do is to organize your fields into groups. Field Groups are defined on the Manage Database Fields page under the “Field Groups” tab. One or more groups would contain all the fields that are common to both registration forms: things like name, address, email, etc.
Once you’ve got your common groups set up, you’ll need to set up at least one group for each form that contains the fields for the particular type of registration the form is for.
Tracking Which Form was Used
Since all the registrations will be contained in the same database, you’ll need an easy and reliable way to tell them apart. A good way to do this is to use a hidden field that records the name of the page the form is on.
Set up a hidden field in one of the common groups. You can name it “Form Type” or whatever you want that indicates that the value determines which form was used. In the “default” value for the hidden field, put “post->post_name” That will be automatically filled with the name of the page the form was on.
Setting Up the Signup Shortcodes
Once you have all your groups defined, set up your shortcodes. You’ll have one shortcode for each type of registration, and they will need to be on different pages. Setting up two different forms is done using the “groups” attribute of the shortcode.
Let’s say you have 3 field groups, one common one and one group for each type of registration form. We’ll call them “common,” “red” and “blue.” When you set up the shortcodes, you can do it like this:
Telling the Registrations Apart
Now, when you list the registrations, you can easily show one or the other using a filter. Let’s say you wanted to show only the “Blue” registrations. The blue form was on a page named “blue-registration” so you’d do it like this:
And that would show all the records that were created using the “Blue” form.
That should get you started on your project that uses more than one kind of registration form.