Forked from greathmaster/pmpro-sponsored-members-add-additional-fields-to-child-accounts.php
Created
February 4, 2021 12:09
-
-
Save MaryOJob/3824184b40fc208826d6adfcee5955f8 to your computer and use it in GitHub Desktop.
This file contains 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
/* | |
Code demo on using pmprosm_children_fields() and pmprosm_after_child_created() hooks to add additional fields to checkout child account creation. | |
Adds shipping fields to child accounts at checkout. Use PMPro Shipping Address on Membership Checkout to view | |
*/ | |
function pmprosm_additional_child_fields($i, $seats) | |
{?><label>Shipping Address 1</label><input type="text" name="add_child_saddress1[]" value="" size="20" /><label>Shipping Address 2</label><input type="text" name="add_child_saddress2[]" value="" size="20" /><label>City</label><input type="text" name="add_child_scity[]" value="" size="20" /><label>State</label><input type="text" name="add_child_sstate[]" value="" size="20" /><label>Postal Code</label><input type="text" name="add_child_szipcode[]" value="" size="20" /><?php | |
} | |
add_action('pmprosm_children_fields', 'pmprosm_additional_child_fields', 10, 2); | |
function pmprosm_save_additional_child_fields($child_user_id, $user_id, $i) | |
{ | |
if(!empty($_REQUEST['add_sub_accounts_first_name'])) | |
$child_first_name = $_REQUEST['add_sub_accounts_first_name']; | |
else | |
$child_first_name = ''; | |
if(!empty($_REQUEST['add_sub_accounts_last_name'])) | |
$child_last_name = $_REQUEST['add_sub_accounts_last_name']; | |
else | |
$child_last_name = ''; | |
if(!empty($_REQUEST['add_child_saddress1'])) | |
$child_saddress1 = $_REQUEST['add_child_saddress1']; | |
else | |
$child_saddress1 = ''; | |
if(!empty($_REQUEST['add_child_saddress2'])) | |
$child_saddress2 = $_REQUEST['add_child_saddress2']; | |
else | |
$child_saddress2 = ''; | |
if(!empty($_REQUEST['add_child_scity'])) | |
$child_scity = $_REQUEST['add_child_scity']; | |
else | |
$child_scity = ''; | |
if(!empty($_REQUEST['add_child_sstate'])) | |
$child_sstate = $_REQUEST['add_child_sstate']; | |
else | |
$child_sstate = ''; | |
if(!empty($_REQUEST['add_child_szipcode'])) | |
$child_szipcode = $_REQUEST['add_child_szipcode']; | |
else | |
$child_szipcode = ''; | |
if(!empty($child_saddress1)) | |
{ | |
update_user_meta($child_user_id, "pmpro_sfirstname", $child_first_name[$i]); | |
update_user_meta($child_user_id, "pmpro_slastname", $child_last_name[$i]); | |
update_user_meta($child_user_id, "pmpro_saddress1", $child_saddress1[$i]); | |
update_user_meta($child_user_id, "pmpro_saddress2", $child_saddress2[$i]); | |
update_user_meta($child_user_id, "pmpro_scity", $child_scity[$i]); | |
update_user_meta($child_user_id, "pmpro_sstate", $child_sstate[$i]); | |
update_user_meta($child_user_id, "pmpro_szipcode", $child_szipcode[$i]); | |
} | |
} | |
add_action('pmprosm_after_child_created', 'pmprosm_save_additional_child_fields', 10, 3); | |
function pmpro_sponsored_member_settings() | |
{ | |
global $pmprosm_sponsored_account_levels; | |
$pmprosm_sponsored_account_levels = array( | |
7 => array( | |
'main_level_id' => 7, | |
'sponsored_level_id' => array(8), | |
// 'seats' => 20, | |
'seat_cost' => 10, | |
'max_seats' => 5, | |
'min_seats' => 2, | |
'sponsored_accounts_at_checkout' => true, | |
'children_get_name' => true, | |
'children_hide_username' => false, | |
'children_hide_email' => false, | |
'children_hide_password' => false, | |
), | |
); | |
} | |
add_action('init', 'pmpro_sponsored_member_settings'); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment