如果購物車不為空,在WooCommerce單一產品頁面上替換「加入購物車」按鈕
P粉331849987
P粉331849987 2023-08-16 12:20:42
0
1
572
<p>我在我的Code Snippets App(外掛程式)中有以下的PHP程式碼:</p> <pre class="brush:php;toolbar:false;">add_action( 'woocommerce_product_meta_end', 'message_when_other_product_already_in_cart', 10 ); function message_when_other_product_already_in_cart() { if ( WC()->cart->get_cart_contents_count() > 0) { $message = '在您將另一個產品添加到購物車之前,請完成購買或清空購物車。 '; echo '<b><p><p>'.$message.'</b></p>'; } }</pre> <p>我需要的是一種方法來隱藏「加入購物車」按鈕。不確定在PHP程式碼中可以使用什麼來隱藏按鈕。在我之前提出的一個問題中,有人建議我使用:</p> <pre class="brush:php;toolbar:false;">if ( WC()->cart->get_cart_contents_count() > 0) { $is_purchasable = false; } return $is_purchasable;</pre> <p>但由於我們的要求已經改變,我只想<strong>隱藏按鈕</strong>並顯示訊息「在您可以新增...之前...」。我不想使用$is_purchasable = false; 這樣做是否可行? </p> <p>我嘗試了各種方法,包括在PHP程式碼中嵌入CSS的方法。然而,所有的努力都未能簡單地隱藏「加入購物車」按鈕。 </p>
P粉331849987
P粉331849987

全部回覆(1)
P粉879517403

以下將在單一產品頁面上,如果購物車不為空,則用自訂文字訊息取代「加入購物車」按鈕:

// 添加到购物车替换文本消息
function add_to_cart_replacement(){
    // 您的消息文本
    $message_text = __( "在您可以将另一个产品添加到购物车之前,请完成购买或清空购物车。", "woocommerce" );
    
    // 显示文本消息
    echo '<p class="button message">' . $message_text . '</p>';
}
// 用自定义文本消息替换单个产品的添加到购物车按钮
add_action( 'woocommerce_single_product_summary', 'replace_single_add_to_cart_button', 1 );
function replace_single_add_to_cart_button() {
    global $product;
    
    // 如果购物车不为空
    if( ! WC()->cart->is_empty() ){
        // 对于变量产品类型(保留属性选择字段)
        if( $product->is_type( 'variable' ) ) {
            remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );
            add_action( 'woocommerce_single_variation', 'add_to_cart_replacement', 20 );
        }
        // 对于其他所有产品类型
        else {
            remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
            add_action( 'woocommerce_single_product_summary', 'add_to_cart_replacement', 30 );
        }
    }
}

程式碼放在您的子主題的functions.php檔案中(或外掛程式中)。已測試並可用。

您將得到類似以下的結果:

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!