Last active
April 4, 2021 03:55
-
-
Save kimcoleman/62786c5d2d750bf123a5df1f59005b67 to your computer and use it in GitHub Desktop.
Add a hidden field to capture Membership Level on a Ninja Form. For Ninja Forms older than version 3.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/* | |
* Add a hidden field in Ninja Forms to capture Membership Level (if user is logged in). | |
* | |
* For Ninja Forms older than version 3 | |
*/ | |
function pmpro_register_ninja_form_level_field() { | |
$argsMl = array( | |
'name' => 'Membership Level', | |
'display_function' => 'collect_membership_level_display', | |
'sidebar' => 'template_fields', | |
'display_label' => false, | |
'display_wrap' => false, | |
); | |
if ( function_exists( 'ninja_forms_register_field' ) ) { | |
ninja_forms_register_field( 'user_membership_level', $argsMl ); | |
} | |
} | |
add_action( 'init', 'pmpro_register_ninja_form_level_field' ); | |
function collect_membership_level_display( $field_id, $data ) { | |
global $current_user; | |
// Get the current user's membership level object. | |
if ( function_exists( 'pmpro_getMembershipLevelForUser' ) ) { | |
$level = pmpro_getMembershipLevelForUser( $current_user->ID ); | |
} else { | |
$level = false; | |
} | |
// Get the current user's membership level name. | |
if ( ! empty( $level ) ) { | |
$current_membership_level_name = $level->name; | |
} else { | |
$current_membership_level_name = false; | |
} | |
// Set the hidden level name field in the form. | |
if ( ! empty( $current_membership_level_name ) ) { ?> | |
<input type="hidden" name="ninja_forms_field_<?php echo $field_id;?>" value="<?php echo $current_membership_level_name; ?>"> | |
<?php | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This recipe is included in the blog post on "Ninja Forms: Add Hidden Field for Membership Level" at Paid Memberships Pro here: https://www.paidmembershipspro.com/ninja-forms-add-hidden-field-for-membership-level/