MemberPress: Enabling Payment Receipt Email for Free Recurring Subscriptions

function mepr_capture_recurring_sub( $event ) { // Get the transaction data from the event $txn = $event->get_data(); // Send the transaction receipt email MeprUtils::send_transaction_receipt_notices( $txn ); } // Attach the ‘mepr_capture_recurring_sub’ function to the ‘mepr-event-subscription-payment-completed’ event. add_action( ‘mepr_event_transaction_completed’, ‘mepr_capture_recurring_sub’ );Continue reading

MemberPress: Enabling Payment Receipt Email for Free Non-recurring Subscriptions

function mepr_capture_new_one_time_sub( $event ) { // Get the transaction data from the event $txn = $event->get_data(); // Send the transaction receipt email MeprUtils::send_transaction_receipt_notices( $txn ); } // Attach the ‘mepr_capture_new_one_time_sub’ function to the ‘mepr-event-non-recurring-transaction-completed’ event. add_action( ‘mepr_event_non_recurring_transaction_completed’, ‘mepr_capture_new_one_time_sub’ );Continue reading

Split Full Name at Checkout

document.addEventListener(‘DOMContentLoaded’, function () { // Select the First Name field var firstNameField = document.querySelector(‘#billing_first_name’); var lastNameField = document.querySelector(‘#billing_last_name’); if (firstNameField) { firstNameField.addEventListener(‘change’, function () { var fullName = firstNameField.value.trim(); var nameParts = fullName.split(‘ ‘); // Extract First Name and Last…Continue reading

Prevent Duplicate Purchases

function pw_edd_prevent_duplicate_purchase( $valid_data, $posted ) { $cart_contents = edd_get_cart_contents(); foreach( $cart_contents as $item ) { if( edd_has_user_purchased( get_current_user_id(), $item[‘id’] ) ) { edd_set_error( ‘duplicate_item’, ‘You have already purchased this item so may not purchase it again’ ); } } }…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