Precisa do Woocommerce para permitir apenas 1 produto no carrinho. Se um produto já estiver no carrinho e outro 1 for adicionado, ele deverá remover o 1 anterior

Eu acho que esse código deve funcionar, mas não sei exatamente onde colocá-lo. Em todos os lugares que tentei falhou até agora ...

add_action('init', 'woocommerce_clear_cart');

function woocommerce_clear_cart() {
global $woocommerce, $post, $wpdb;

$url = explode('/', 'http://'.$_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
$slug=$url[4];
$postid = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_status='publish' AND post_name = '$slug'");

    if ($postid){
        if ($postid == PRODUCTID1 || $postid == PRODUCTID2){
        $woocommerce->cart->empty_cart();
        }
    }

}

questionAnswers(8)

yourAnswerToTheQuestion