adding extra fields to the Membership registration page

Hi Guys. I know you've answered this many times, but I'm completely confused.
I need to add extra fields to my registration form to comply with legislation (political site). I see you recommend using Buddy Press but I can't figure out how to 1) find their registration form from the back end and 2) integrate it without using Buddy Press on the site. I should also add that, should I be compelled to use BP to accomplish the desired result, I certainly don't want it to be running in the site! I had a look at Protected Content, too, but to be perfectly honest, after Membership, I'm finding Protected is confusing in its setup. Perhaps I'm just over trying to figure out the best way to fix my membership-woes... Hope you can steer me in the right direction - you usually do!
Cheers.

  • Vinod Dalvi
    • WP Unicorn

    Hi @Keith,

    Greetings and thanks for posting on the forum.

    The Protected Content is a newer plugin therefore i think you may be finding it confusing like what i thought initially but later when i started using it then it seemed easier to use.

    I can't figure out how to 1) find their registration form from the back end an

    The buddypress doesn't have registration form in the back end but it has Extended Profile (xProfile) Fields component in the back end which you can use to create custom fields for the registration form as described on the following page.

    https://codex.buddypress.org/getting-started/guides/modifying-the-registration-form/
    https://codex.buddypress.org/buddypress-components-and-features/extended-profiles/

    2) integrate it without using Buddy Press on the site.

    Using BuddyPress to create extra registration form fields is the easier way to accomplish this but you can also achieve it without using BuddyPress but that will need some extra work.

    You will have to overwrite the Membership registration form template as described in the following replies and add the custom user fields in to the template.

    https://premium.wpmudev.org/forums/topic/adding-fields-to-the-registration-for-membership-plugin#post-376768
    https://premium.wpmudev.org/forums/topic/what-is-the-best-way-to-add-additional-user-registration-fields-on-a-site-using-your-membership-plugin#post-377451

    You can also use the following plugin to create the user fields which can be added in membership registration from template.

    https://wordpress.org/plugins/cimy-user-extra-fields/

    Best Regards,
    Vinod Dalvi

  • Keith
    • Flash Drive

    Hi Vinod, thanks for the response. I have activated BP and added the extra profile fields, however, these extra fields do not show up in Membership>All Members. To be more specific, I can register a test member on the front of the site, but when I check the Membership>All Members, only the fields which coincide with the original fields are available. For example, I needed to have First Name and Last Name as separate fields, originally there was only provision for "Name". After filling out all the required fields then checking out the Membership>All Members, there are no First/Last fields in the list and the "Name" column is empty. Hope this makes sense, and hope you have an answer :slight_smile:

    Cheers.

  • Keith
    • Flash Drive

    Hi. Following your recommendations, I installed BuddyPress and use that to add to my registration fields. Unfortunately, this appeared to change the way users were integrated with Membership Pro - as in the first-name last-name functionality didn't register in the members list, only the "username", which basically makes it impossible to find members when they are using an alias. I am guessing that BP has taken over from the registration that is being used by Membership. If so, how do I get the original registration page as used by WP without BP installed to display with extra fields from the BP plugin.
    I also tried, on your advice, CyMy extra fields plug in. I disabled BP and created extra fields in Cymy, but I couldn't figure out how to get the extra fields to show in the registration form.
    I'm kinda loosing it here - can you guys point me in the right direction - please...

    Cheers.

  • Vinod Dalvi
    • WP Unicorn

    Hi @Keith,

    Thank you fro your reply.

    I can register a test member on the front of the site, but when I check the Membership>All Members, only the fields which coincide with the original fields are available.

    The created extra fields appear in the "Extended profile" tab when you visit user profile page in the All Members area by clicking on the Edit link.

    I am guessing that BP has taken over from the registration that is being used by Membership. If so, how do I get the original registration page as used by WP without BP installed to display with extra fields from the BP plugin.

    To get the Membership registration page just set BuddyPress Register page to None on the following path in the BuddyPress settings.

    Admin Area -> Settings -> BuddyPress -> pages

    I also tried, on your advice, CyMy extra fields plug in. I disabled BP and created extra fields in Cymy, but I couldn't figure out how to get the extra fields to show in the registration form.

    You will have to overwrite the Membership registration form template as described in the following replies and add the created custom user fields in to the template.

    https://premium.wpmudev.org/forums/topic/adding-fields-to-the-registration-for-membership-plugin#post-376768
    https://premium.wpmudev.org/forums/topic/what-is-the-best-way-to-add-additional-user-registration-fields-on-a-site-using-your-membership-plugin#post-377451

    Please advise if you have more questions.

    Regards,
    Vinod Dalvi

  • Keith
    • Flash Drive

    Thanks for the response, I feel I'm getting closer - but...

    In reading the links you posted, it mentions I have to update the registration.form.php in the membership/membershipincludes/includes folder - there is no registration.form.php file in this folder.

    I'm also a little confused (being a Noobie at being this involved) about adding the extra fields - although I'm beginning to understand this is possible. Am I correct in understanding that I can create extra fields using CiMy and add them to the membership form - if so, what would I need to do to achieve this. Hope I'm not being too much of a pain; but hey, I'm enjoying learning and I thank you guys for your patience:slight_smile:

  • Keith
    • Flash Drive

    I've been doing a little more digging. As noted earlier, I have no registration.form.php - however, I have account.form.php and subscription.form.php

    I note the subscription.form.php contains the membership wrapper and would therefore be the obvious place to make changes to the standard text on this page; however, I am aware of the dangers of changing the primary file so was wondering how and where I would make these changes.

    With regards to my primary (original) question re adding extra fields to the 'join' page, I note the account.form.php is calling info for the fields to be included on the page with a div element for each field. So - if I create extra fields using, say, CiMy, how do I call these fields into the account.form.php (asuming this is the right way to do it, and what would be the best (safest) way to achieve this.

    Cheers.

  • Jack Kitterhing
    • Code Norris

    Hi there @Keith,

    Hope you're well today! :slight_smile:

    I haven't used CiMy fields myself, however you would be looking at modifying the core subscription.form.php in membership, currently there's no way to do that without modifying it within the plugin, which means it would be overwritten on a update.

    But when a update is out, you could compare all files and only change the effected files, preserving your edit (as long as you don't use auto updates).

    Thanks!

    Kind Regards
    Jack.

  • Keith
    • Flash Drive

    With the ongoing issue of not being able to add extra fields...

    As it stands now, the standard Membership form is filled out, then prospective members are taken straight to the PayPal site to pay. Is it possible to add another page between registration and paypal for the extra fields, ie., standard registration form, hit the submit button and it then goes to the extra fields page, then on completion, to the Paypal site.

    If this is possible, what wold be th best way to achieve this?

    Cheers.

  • Vinod Dalvi
    • WP Unicorn

    Hi @Keith,

    Sorry for the confusion here but you can overwrite the core membership file subscription.form.php in your child theme by copying it in the root folder of your child theme and adding the following code in the functions.php file of your child theme so that it would not be overwritten on a update.

    function custom_membership_override_subscription_form(){
    	return get_stylesheet_directory() . '/subscription.form.php';
    }
    add_filter('membership_override_subscription_form', 'custom_membership_override_subscription_form' );

    You can add additional registration fields in the file subscription.form.php by calling the functions of CIMY user Extra Fields plugin or doing it manually as described on the following pages.

    http://code.tutsplus.com/tutorials/creating-a-custom-wordpress-registration-form-plugin--cms-20968
    http://designmodo.com/wordpress-custom-registration/

    The alternate and more easier way to achieve it is using BuddyPress and its Xprofile so we recommend you to use it.

    Regards,
    Vinod Dalvi

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.