簡體   English   中英

在 WooCommerce 中有條件地刪除結帳條款和條件

[英]Remove Checkout Terms & Conditions conditionally in WooCommerce

如果沒有可用的支付網關,我想在結帳期間刪除 Woocommerce 隱私政策文本和條款和條件。

這是我試過的代碼

add_action('woocommerce_checkout_terms_and_conditions', 'disable_woocommerce_checkout_options', 10 );
function disable_woocommerce_checkout_options(){
    if ( empty( $available_gateways ) ) {
            remove_action( 'woocommerce_checkout_terms_and_conditions', 'wc_checkout_privacy_policy_text', 20 );
            remove_action( 'woocommerce_checkout_terms_and_conditions', 'wc_terms_and_conditions_page_content', 30 );
        }
}

即使有可用的支付網關,這也會完全刪除隱私政策和條款和條件。

變量$available_gateways未定義, woocommerce_checkout_init是要使用的正確掛鈎。 請嘗試以下操作:

add_action('woocommerce_checkout_init', 'disable_checkout_terms_and_conditions', 10 );
function disable_checkout_terms_and_conditions(){
    // Get available payment gateways
    $available_gateways = WC()->payment_gateways->get_available_payment_gateways();
    
    if ( empty( $available_gateways ) ) {
        remove_action( 'woocommerce_checkout_terms_and_conditions', 'wc_checkout_privacy_policy_text', 20 );
        remove_action( 'woocommerce_checkout_terms_and_conditions', 'wc_terms_and_conditions_page_content', 30 );
    }
}

代碼位於活動子主題(或活動主題)的 function.php 文件中。 測試和工作。

相關: 在 WooCommerce Checkout 中刪除一些基於虛擬產品的掛鈎功能

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM