MemberPress: Only Allow Coupon Once Per User

function custom_validate_coupon( $errors ) { global $wpdb; //If user is not logged in, then they’ve never used a coupon before if( !MeprUtils::is_user_logged_in() ) { return $errors; } $coupon_code = ( isset( $_POST[‘mepr_coupon_code’] ) && !empty( $_POST[‘mepr_coupon_code’] ) )?stripslashes( $_POST[‘mepr_coupon_code’] ):”;…Continue reading

MemberPress: Remove State Text Field

function mepr_remove_state_field() { global $post; $mepr_options = MeprOptions::fetch(); $is_product_page = ( false !== ( $prd = MeprProduct::is_product_page($post) ) ); if( $mepr_options->global_styles || $is_product_page ) { ?>Continue reading

MemberPress: Remove Accordion from Courses

function mepr_remove_accordion_class( $classes ) { //Course class body $cs_index = array_search( ‘mpcs-course-with-accordion’, $classes ); if ( isset( $cs_index ) ) { unset( $classes[$cs_index] ); } //Sidebar class body $sb_index = array_search( ‘mpcs-sidebar-with-accordion’, $classes ); if ( isset( $sb_index ) )…Continue reading

MemberPress: Exclude Protected Posts from Search Results

function maybe_exclude_protected_posts($query) { if(!$query->is_admin && $query->is_search && $query->is_main_query()) { $posts_to_exclude = array(); $posts = get_posts(array( ‘post_type’ => get_post_types(), ‘numberposts’ => -1 )); foreach($posts as $post) { if(MeprRule::is_locked($post)) { $posts_to_exclude[] = $post->ID; } } if(!empty($posts_to_exclude)) { $query->set(‘post__not_in’, $posts_to_exclude); } } }…Continue reading