Как я могу применить купон Woocommerce к определенной роли пользователя без плагина?
Я реализовал роль оптового пользователя на Wordpress-сайте моего клиента. Конечная цель - предоставить оптовому пользователю скидку 40 % на все товары, но если они потратят 500,00 долл. США или более, они получат дополнительные 7% от общей суммы покупки в корзине. Я установил первоначальную скидку 40 % с динамическим ценообразованием, а для дополнительных 7% я создал купон, который будет автоматически применяться к корзине без необходимости вводить код купона.
Единственная проблема заключается в том, что купон работает для всех пользователей (клиентов, администраторов и дилеров) и не зависит от конкретной роли. Может кто-нибудь сказать мне, как я могу изменить свой код купона, чтобы применить только к роли пользователя для "дилера"? Если вам нужно увидеть живой сайт, вы можете посмотреть его здесь! Спасибо!
add_action( 'woocommerce_before_cart', 'apply_matched_coupons' );
function apply_matched_coupons() {
global $woocommerce;
$coupon_code = 'additionaldiscount'; // coupon code
if ( $woocommerce->cart->has_discount( $coupon_code ) ) return;
if ( $woocommerce->cart->cart_contents_total >= 500 ) {
$woocommerce->cart->add_discount( $coupon_code );
$woocommerce->show_messages();
}
}
1 ответ
Ты можешь использовать current_user_can()
проверить роль или возможность:
if ( current_user_can('dealer') && $woocommerce->cart->cart_contents_total >= 500 ) {
$woocommerce->cart->add_discount( $coupon_code );
$woocommerce->show_messages();
}