Multiple Registration Forms?
I’m finding old articles about this issue around 3 years old. i just can’t find an answer to this. figured i would update the question…I have two completely different Groups “Promoters” and “Bands”. each requiring two completely different sign up forms. when the promoter goes to sign up for the promoter group, i need the registration form to have all the fields for just the “promoter”. same for the band. there’s several different fields that are REQUIRED for the band, but not for the promoter. does anyone have any ideas or plugins? surely there has to be an option. thanks everyone!
I’m looking for the same thing. I’m going to be connecting up user roles with ‘member types’ when people register. My issue is having two different member types and allowing them to register separately and the back end automatically assigning the correct roles and types.
What I was thinking was to simply pull out the registration form from register.php and put this into a custom template. I was then thinking to pass a hidden form field with the member type in. Where the form data is processed I will have a conditional statement that says “if $_POST[“expert”] = “expert” then this member type is registered and it’s this role. etc.
My issue is, where is the registration form data processed? It has a blank action attribute so I don’t know where the data goes.
anybody know where to go with this? i know this is so important for a lot of people…
Hi found two links related to the issue may be these may prove helpful as far as i remember latest version of buddypress now supports functions for multiple role on registration
I’m looking for something similar, however I want completely separate forms. I can see how to edit the registration page to only show the fields I need as I customised this to my requirements already. My problem is that I want multiple pages with separate forms on them as this would allow me to code them differently to my needs. When I have put the BP registration form code into a custom wordpress page template, this doesn’t display the form fields as it clearly isn’t recognising the BP specific code within the template.
I’m unsure of where to go with this.
Edit: I can get the form to show up now, but when I submit the form, it just reloads the page without registering the new user.
I’ve searching for something like this for so long. I thought it would have a common issue, but I can’t find anything on how to do it.
I believe this not an issue because BP only needs an email, username and a password to do a succesfull registration. All other inputs may change for each site.
You can use a plugin(like “contact form”) to create registration forms and then assign form inputs into custom created xprofile fields.
I think I found something something close.
A free plugin called ‘Conditional Profile Fields for BuddyPress’ on buddydev.com/
It allows you to set conditions for profile field so each user has a different set of fields based on their previous answer or input.
It does it by hiding or showing fields based on specific answer given. The great thing here is that you now have to use just one dynamic registration form for all user types or groups.
Use this tutorial for a better understanding how the plugin works http://wptavern.com/new-plugin-adds-conditional-profile-fields-to-buddypress/
I hope it helps.
Hi, I realize this is an old thread. However, I thought of posting my solution, just in case someone finds it helpful. (tried posting it three times.., it just disappears from here)
1. Copy the the contents of the bp-templates/bp-legacy/buddypress/members/register.php into the new registration page template
2. At this point, the registration form will show up, but nothing will happen when we submit the form.
3. To solve that, we need to add a custom function to the “bp_screen” hook. In the custom function, we will paste the contents of the “bp_core_screen_signup” function. (located in bp-members/bp-members-screens.php)
4. Then, in our custom function, we will remove this
if ( ! bp_is_current_component( 'register' ) || bp_current_action() ) return;
and put this
if ( !is_page( 'your-page-slug' ) || bp_current_action() ) return;
5. Next, we’ll remove these lines
bp_core_load_template( apply_filters( 'bp_core_template_register', array( 'register', 'registration/register' ) ) );
It will work now.
Here is the pastebin of the custom function created in bp-custom.php
*** SOLUTION ***
Hey guys I had the similar problem. I had 3 different user types. The first two could select between 2 user roles (let’s say “part time student” or “regular student”), as the third one had to have a set role of a let’s say “Teacher”. So I needed two different registration forms that would automatically register with user roles.
Now that template is for the registration of “Part Time Student” and “Regular Student”. For the teacher’s is just the regular registration form with the “Teacher” option selected by default.
Now to register the user roles I’ve used @spiritix’s solution from here: https://buddypress.org/support/topic/how-to-assign-a-wp-user-role-based-on-a-registration/
And to restrict wich forums users can access I’ve used https://wordpress.org/plugins/members/
Hope this helps. Good Luck and let me know if anyone has a better solution than this. Thanks
- You must be logged in to reply to this topic.