MemberPress: Allow Coupon for Active Members Only

function mepr_validate_coupon_for_active_members($errors) { $user = new MeprUser(get_current_user_id()); $coupon_code = (isset($_POST[‘mepr_coupon_code’]) && !empty( $_POST[‘mepr_coupon_code’])) ? stripslashes( $_POST[‘mepr_coupon_code’] ) : ”; // Define the coupon code as a constant define( ‘ACTIVE_MEMBER_COUPON’, ‘THECOUPONCODE’ ); // Check if it’s the specific coupon and the…Continue reading

MemberPress: Make VAT field required for Registering EU-based Users

function mepr_cust_limit_eu_signups( $errors ) { $usr_country = sanitize_text_field( $_POST[‘mepr-address-country’] ); $countries = require( MEPR_DATA_PATH.’/taxes/vat_countries.php’ ); //If EU country, but not GB, and no vat number entered, throw error if( array_key_exists( $usr_country, $countries ) && ‘GB’ != $usr_country && !isset( $_POST[‘mepr-vat-number’]…Continue reading

MemberPress: Add Address Fields to Authorize.net

function add_address_to_recurring( $args, $txn, $sub ) { $user = new MeprUser( $txn->user_id ); if ( $user->address_is_set() ) { $addr = $user->full_address( false ); $args[‘subscription’][‘billTo’][‘address’] = $addr[‘mepr-address-one’] . ( isset($addr[‘mepr-address-two’] ) ? ‘ ‘ . $addr[‘mepr-address-two’] : ” ); $args[‘subscription’][‘billTo’][‘city’] =…Continue reading

MemberPress: Change Membership Registration URL

function mepr_change_membership_urls( $url, $product, $args, $modify_if_https ) { $url_changed = false; switch( $product->ID ) { case ‘123’: //Change 123 to membership id where you can get it from ID column from Membership table $url = MeprUtils::get_permalink( 456 ).$args; //Change 456…Continue reading

MemberPress: Add/Override State Drop Down Values

function mepr_change_state_dropdown_values ( $states ) { $sfiles = @glob( WP_PLUGIN_DIR . ‘/mepr-i18n/states/[A-Z][A-Z].php’, GLOB_NOSORT ); foreach( $sfiles as $sfile ) { require( $sfile ); } return $states; } add_filter( ‘mepr_states’, ‘mepr_change_state_dropdown_values’ );Continue reading