首页 > 解决方案 > 为已注销的用户隐藏添加到购物车按钮,但保留数量选择器

问题描述

在我的网站上,我只想为注销的用户/“访客用户”隐藏“添加到购物车”按钮

这是我在我的 functions.php 文件中添加到我的主题中的代码。

// For product archives pages
add_action( 'init', 'hide_product_archives_prices' );
function hide_product_archives_prices(){
    if( is_user_logged_in() ) return;

    remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
    remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10) ;
    }

//
add_action( 'woocommerce_single_product_summary', 'hide_single_product_prices', 1 );
function hide_single_product_prices(){
    if( is_user_logged_in() ) return;

    global $product;

    remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 );

    if( ! $product->is_type('variable') ){
        remove_action('woocommerce_single_product_summary','woocommerce_template_single_add_to_cart', 30 );

    } else {
        remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation', 10);
        remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );

    }
}

一切正常,因为它隐藏了注销用户的添加到购物车按钮,但我仍然希望数量选择器可用,因为我正在使用请求报价插件将带有数量的产品添加到报价车中。所有产品都是可变产品 在这个阶段会显示立即查询按钮,但是当您单击它以将其添加到报价车时它不会添加它,因为没有选择数量。

标签: phpwordpresswoocommerceproducthook-woocommerce

解决方案


推荐阅读