Я пытаюсь применить определенный налоговый класс по ролям в фильтре wordpress. Этот налоговый класс применяется к вариативным продуктам, а также к обычным отдельным продуктам. Мне просто нужно исключить конкретный вариант продукта или вариант производства по идентификатору. Вот что у меня есть на данный момент:
function wc_diff_rate_for_user( $tax_class, $product ) {
$user_id = get_current_user_id();
$user = get_user_by( 'id', $user_id );
if ( is_user_logged_in() && ! empty( $user ) && in_array( 'MEMBER', $user->roles ) && is_product() && get_the_id() != 1337) {
$tax_class = 'Reduced rate';
}
return $tax_class;
}
add_filter( 'woocommerce_product_get_tax_class', 'wc_diff_rate_for_user', 1, 2 );
add_filter( 'woocommerce_product_variation_get_tax_class', 'wc_diff_rate_for_user', 1, 2 );
Я думаю, что я не справлюсь со следующей частью: is_product() && get_the_id() != 1337)
, поскольку налоговый класс «Сниженная ставка» применяется ко всем продуктам, включая тот, который я пытаюсь исключить. Любые предложения будут очень признательны.