By default, the Paid Memberships Pro membership checkout does not request the user’s first and last name. If you’d like to capture this information for your members, we have a very simple Add On that instantly adds the fields.

View the Add On

How it Works

After installing and activating the Add On, the Membership Checkout page will automatically include a field for “First Name” and “Last Name” below the password fields in the “Account Information” area of checkout.

Watch the Installation and Activation Demo

View the Add On

This entry was posted by Jason Coleman in Add Ons and tagged . Bookmark the permalink. Last updated: April 16, 2018. Titled Capture the User’s First and Last Name at Membership Checkout

Placing it at the bottom is usually a good way to go. Make sure that you when you paste, you don’t add “nested PHP tags”… so you DON’T want something like this:

< ?php

Make sure that the PHP code is within one PHP tag or you close any old PHP tag and open a new one. So

< ?php //old code //new code ?>


< ?php //old code ?>
< ?php //new code ?>

If you’re having trouble with this, your best bet is to use the Add On to add all of the name and address fields to free levels. You only need to download and install that as a separate plugin. No code tweaking needed. The link is at the top of this post now.

Okay I called Hostgator and figured out what happened. The first piece of code is not for the function.php file. <label for="first,… That's what crashed my theme.

Where am I supposed to add that piece of code? It says "add the field to the form" I don't know what that means. Where can I edit the form? thanks

I just saw this update that you created a plugin – awesome!!
– Do I just download it and install?
– What if I don’t want to require Last Name, only first name?
– does the first and last name get stored in user profile and then send to the mailchimp integration account automatically?



Great plugin – one small bug
I installed the plugin you built. One small bug is the First and Last Name field do not have an * to indicate they are required.

Can you pls fix. love the plugin. thanks


Thanks for this, it would be great if it had the same positioning options available as register helper for consistency purposes. As well both could use before and after variations of the positions to allow for additional functionality in look and feel of the checkout experience.

Good suggestions. You could change this action to move the fields somewhere else on the checkout page:

You should be safe just editing that plugin (we probably won’t have many updates) or you can remove_action and then add_action using the filter you want.

RE before_ variations of the actions, another good idea. We add them on demand. So let us know where you want one specifically, and I can put it into the next version of the plugin.

On the befores, I for example have a custom field named “Full Name”; but the First and Last name appear in the billing information with a TOS in the middle between the two. (This is so i can tie it to their event result registry which is a single field) I would prefer to be able to put everything in the order they are generally used to in a registration process, so for example Username, email address, password, conf. password, First name, Last name, Registration (Full) name*, Gender*, DOB*, Phone, Emergency Contact*, Address Info Fields in billing, TOS (and I want to denote they checked the box). The *’d fields are custom and are interwoven between the standard wordpress fields and the billing fields. All of which I want to retain in their membership record.

Hi! I am wondering if you can customize different forms for different membership levels.

Let me explain myself. I am building a site for a runners coach, this guy wants to have differents membership and needs to get different data from different membership. For the highest membership he wants data for marathons, and this marathon data is useless in other memberships.

Hope I made this clear.

Thanks in advance

You can grab a plugin that does this here:

If you want to use code like this paste it into your active theme’s functions.php file. So /wp-content/themes/yourthemename/functions.php or something similar. Also, you can create a custom WP plugin to put the code into. Info on that here:

Hi there! Because I am using both Register Helper AND the Import .csv add-on, I’m wondering: How to do I label the column fields for the custom data I’ve added through Register Helper?

The “name” of the field set in the Register Helper line is the “meta key” used by WordPress.

So if your field is like new PMProRH_Field(“company”, …) then you just need to add a column “company” to the spreadsheet you import. Case and spacing matters. Your meta keys must also have no spaces or special characters (except underscores) and start with a letter.

i used
Plugin Name: PMPro Add Name to Checkout
Plugin URI:
Description: Adds first and last name fields to the user account section at checkout for Paid Memberships Pro.
Version: .2
Author: Stranger Studios
Author URI:

downloaded from:

on testing the same, great it worked and First name and Last name was collected.
But, there after i noticed something (not sure this is bug or a feature) the saved First Name and last name was actually from the Paypal user account and not what i had entered on the the check out form.

Please help…

This worked brilliantly. Thank you! We needed to ask for the firstname and lastname so we could say a friendly welcome with their name to our program, so it was great that we could add this in. My only concern if whenever the plugin requires updating it will overwrite my custom checkout page. I have saved a copy just incase. 😉 Maybe I should be saving my custom checkout page elsewhere, but I wasn’t sure.

Hi Jason,
thank you for that great plugin and all the effort you put into solving such tiny things, that make it so much easier for many of the users to get the results they are looking for.

I’m not sure if I would call it a but, but when someone leaves required fields empty, first they are prompted that
“The first and last name fields are required.” All other missing fields are not mentioned in the message on top.

Furthermore, those fields (first and last name) are not highlighted, whereas the Password field (which was also empty) is highlighted, but not mentioned in the error message on top of the checkout page.

Is there a way to merge all error messages on top, so that users are told to fill in their first and last name as well as the missing password/e-mail/etc?

And it would also be very helpful if the first and last name fields would follow the same highlighting rules when they are left empty (so that users immediatly see which fields do fill in).

Thanks and best,

This is a good suggestion, but also a bit tricky to implement between the core plugin and addons. I should be able to at least highlight the first and last name fields. In general, we have the error message show the first field that was found missing vs a laundry list of fields when you leave a bunch blank.

I have added first and last names to my member signup form, and they are required. However, these two fields do not show up on the “new member checkout” administrative notification I receive.

I also added “extra fields” to the signup form and these do show up on the admin notification.

How do I include first and last name on the admin notice? I don’t know what email template to tweak – or what code to add to the PHP file for Register Helper Plugin?

Our signup page is here:

An example of an admin notification:

Subject: Member Checkout for Individual One-year Membership at Minnesota Association of Songwriters

There was a new member checkout at Minnesota Association of Songwriters.

Below are details about the new membership account and a receipt for the initial membership invoice.

Account: johndoe (

Membership Level: Individual One-year Membership

Membership Fee: $35 Donation

This membership will expire on February 27, 2020.

Invoice #XXXXXX on February 27, 2019
Total Billed: $35.00

Log in to your membership account here:….

Extra Fields:
– Address 1: 12345 Some St
– Address 2:
– City: Sometown
– State: MN
– Phone 1: XXXXX
– Phone 2:
– Band Name:

Leave a Reply

For faster support related to issues on your specific site please open a ticket in our members support area.

Your email address will not be published. Required fields are marked *