我正在尝试对单独销售的产品执行以下操作,当它显示错误时,您无法添加更多产品,因为它们已经被添加。此错误会重定向到结账页面。
add_filter( 'woocommerce_product_add_to_cart_url', 'misha_fix_for_individual_products', 10, 2 );
function misha_fix_for_individual_products( $add_to_cart_url, $product ){
if( $product->get_sold_individually() // if individual product
&& WC()->cart->find_product_in_cart( WC()->cart->generate_cart_id( $product->id ) ) // if in the cart
&& $product->is_purchasable() // we also need these two conditions
&& $product->is_in_stock() ) {
$add_to_cart_url = wc_get_checkout_url();
}
return $add_to_cart_url;
}
我找到了解决方案,这对我有用。
add_filter( 'woocommerce_add_to_cart_sold_individually_found_in_cart', 'bypass_add_to_cart_sold_individually_found_in_cart', 10, 2 );
function bypass_add_to_cart_sold_individually_found_in_cart( $found_in_cart, $product_id ) {
if ( $found_in_cart ) {
wp_redirect(wc_get_checkout_url());
exit;
}
return $found_in_cart;
}