Bagaimana untuk menyembunyikan medan kupon WooCommerce untuk produk tertentu?
P粉138871485
P粉138871485 2023-07-28 11:22:20
0
1
355

Saya cuba menyembunyikan medan kupon untuk produk tertentu dalam troli WooCommerce dan halaman daftar keluar. Selepas mencari di Google, saya menemui beberapa kod yang menyembunyikan medan kupon, tetapi hanya untuk satu produk.

Bagaimana saya boleh mengendalikan berbilang produk dalam kod ini:


// sembunyikan medan kupon pada halaman pembayaran fungsi disable_coupon_field_on_checkout( $enabled ) { jika ( is_checkout() ) { $product_id = 240790; $in_cart = palsu; foreach( WC()->cart->get_cart() sebagai $cart_item ) { $product_in_cart = $cart_item['product_id']; if ($product_in_cart === $product_id ) $in_cart = benar; } jika ( $in_cart === benar ) { $enabled = palsu; } } pulangkan $enabled; } add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_on_checkout' ); // sembunyikan medan kupon pada halaman troli fungsi disable_coupon_field_on_cart( $enabled ) { jika ( is_cart() ) { $product_id = 240790; $in_cart = palsu; foreach( WC()->cart->get_cart() sebagai $cart_item ) { $product_in_cart = $cart_item['product_id']; if ($product_in_cart === $product_id ) $in_cart = benar; } jika ( $in_cart === benar ) { $enabled = palsu; } } pulangkan $enabled; } add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_on_cart' );
P粉138871485
P粉138871485

membalas semua (1)
P粉615829742

Kod di bawah akan mengendalikan berbilang ID produk dan/atau ID varian untuk kedua-dua troli beli-belah dan halaman daftar keluar, melumpuhkan medan kupon untuk produk ini.

// hide coupon field on cart and checkout pages add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_for_specific_products' ); function disable_coupon_field_for_specific_products( $enabled ) { if ( ( is_checkout() && !is_wc_endpoint_url() ) || is_cart() ) { // here define your product IDs in the array $product_ids = array(240790, 240792, 240795, 240798); // Loop through cart items foreach( WC()->cart->get_cart() as $item ) { if ( count( array_intersect( [$item['product_id'], $item['variation_id']], $product_ids ) ) > 0 ) { return false; } } } return $enabled; }

Sepatutnya berguna

    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!