решаемая.
Поделиться моим решением:
add_action( 'woocommerce_before_calculate_totals', 'no_discount_if_not_logged_in', 10, 1);
function no_discount_if_not_logged_in( $cart ) {
if (!is_user_logged_in()) {
foreach ( $cart->get_cart() as $cart_item ) {
$descount_eliminate = $cart_item['data']->get_regular_price();
$cart_item['data']->set_price($descount_eliminate );
}
}
}