WooCommerce Студенческая скидка
Мне нужно создать купон в WooCommerce, который будет работать, только если у пользователя есть электронная почта, которая заканчивается .ac.uk
,
Например student.name@uwl.ac.uk
или же teacher@kings.ac.uk
,
Скидка будет 10% от общей корзины покупок.
Я не могу найти какие-либо решения онлайн или плагины, которые могли бы помочь.
Есть идеи?
Благодарю.
1 ответ
Вы можете использовать этот Автоприменить Дисконтный Купон к функции Покупки Клиента с соответствующими условиями (электронная почта пользователя заканчивается ac.uk
):
add_action('woocommerce_before_cart_table', 'coupon_auto_apply_user_email_tld', 10, 0);
function coupon_auto_apply_user_email_tld() {
$current_user = wp_get_current_user();
$user_email = $current_user->user_email;
$mail_part = explode('@', $user_email);
$domain_part = explode('.', $mailParts[1]);
$mail_tld = $domain_part[1] . '.' . $domain_part[2]);
if ( $woocommerce->cart->has_discount( $coupon_code ) ) return;
if ( $mail_tld == 'ac.uk' ) {
$coupon_code = 'UNIQUECODE'; // <= set the name of your coupon code here
if ( ! WC()->cart->add_discount( sanitize_text_field( $coupon_code ) ) ) {
WC()->show_messages();
}
echo '<div class="woocommerce_message"><strong>The total price in your cart will be discounted 10% off…</strong></div>';
}
else
{
return;
}
}
Вам нужно будет установить в настройках купона WooCommerce купон с желаемым поведением (скидка 10%), и вы сообщите об этом купоне в этой функции.
Скопируйте код в файл functions.php, расположенный в вашей активной теме или лучше вашей активной дочерней теме.