Я пытаюсь настроить магазин таким образом, чтобы в категории «Образец продукта» в корзину можно было добавить только 2 товара. Я добавил, что этот код работает только на странице товара, а не на странице корзины.
add_action( 'woocommerce_process_product_meta', 'cfwc_save_sample_product_id' );
function cfwc_save_sample_product_id( $post_id ) {
$product = wc_get_product( $post_id );
$title = isset( $_POST['custom_text_field_sample_product_id'] ) ?
$_POST['custom_text_field_sample_product_id'] : '';
$product->update_meta_data( 'custom_text_field_sample_product_id', sanitize_text_field( $title ) );
$product->save();
}
add_filter( 'woocommerce_add_to_cart_validation', 'only_four_items_allowed_add_to_cart', 10, 3 );
function only_four_items_allowed_add_to_cart( $passed, $product_id, $quantity )
{
$cart_count = WC()->cart->get_cart_contents_count();
$total_count = $cart_count + $quantity;
if ( has_term( 'Sample Product','product_cat',$product_id ) && ( $cart_count >= 4 || $total_count > 2 ) ) {
$passed = false; // Set to false
$notice = __( "You Can add only 2 sample product , Can't Add More", "woocommerce" ); // Notice to display
}
if( ! $passed )
wc_add_notice( $notice, 'error' );
return $passed;
}
Но этот код не работает на странице корзины, страница продукта работает отлично. Пожалуйста, помогите мне любое решение для меня.