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 a Shortcode To Display the Number of Total Downloads for All Files

add_shortcode( ‘mepr-display-total-downloads’, function() { global $wpdb; $downloads_old = $wpdb->get_var( “SELECT SUM(download_count) FROM {$wpdb->prefix}mpdl_file_downloads” ); $downloads_new = $wpdb->get_var( “SELECT count(*) FROM {$wpdb->prefix}mpdl_file_stats” ); $downloads_old = isset( $downloads_old ) && $downloads_old != null ? $downloads_old : 0; $downloads_new = isset( $downloads_new )…Continue reading

MemberPress: Add Address Column to Subscriptions Table

add_filter( ‘mepr-admin-subscriptions-cols’, function( $cols ) { $cols[‘col_address’] = __( ‘Address’, ‘memberpress’ ); return $cols; }); add_action( ‘mepr-admin-subscriptions-cell’, function( $column_name, $rec, $table, $attributes ) { if( $column_name === ‘col_address’ ) { $user = new MeprUser( ( int ) $rec->user_id ); $address_one…Continue reading

MemberPress: Import Dropdown Options for Custom Fields

function mepr_cust_import_options() { if( isset( $_REQUEST[‘import-options’] ) ) { // For this code snippet to work, a custom dropdown field must be created at Dashboard > MemberPress > Settings > Fields tab. $mepr_options = MeprOptions::fetch( true ); $key = ‘mepr_custom_dropdown’;…Continue reading

MemberPress: Set UK Transactions VAT to 0

function mepr_cust_uk_vat( $vat_countries ) { if( isset( $vat_countries ) ) { $gb = $vat_countries[‘GB’]; if ( isset( $gb ) ) { $gb[‘rate’] = 0; $vat_countries[‘GB’] = $gb; } } return $vat_countries; } add_filter( ‘mepr-vat-countries’, ‘mepr_cust_uk_vat’ );Continue reading

MemberPress: Tax Only UK

function mepr_cust_tax_only_uk( $tax_rate, $country, $state, $postcode, $city, $street, $user, $prd_id ) { if ( $country != ‘GB’ ) { $tax_rate->tax_rate = 0.0; } return $tax_rate; } add_filter( ‘mepr_find_tax_rate’, ‘mepr_cust_tax_only_uk’, 99, 8 );Continue reading