You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WooCommerce中移除Add to Cart按钮且保留商品变体下拉选项

WooCommerce全站隐藏Add to Cart按钮(保留变体下拉、价格显示)

问题原因

你之前的代码冲突是因为 remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 ); 会直接移除可变商品的整个变体区域(包含下拉菜单、价格、加购按钮三个部分),所以后续针对可变商品加购按钮的移除代码自然无法生效,因为挂载的父区域已经被删掉了。

完整可用代码

把下面的代码添加到你当前主题的functions.php文件,或者自定义代码片段插件中即可:

// 1. 移除商店列表/归档页所有商品的Add to Cart按钮
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );

// 2. 商品详情页分类型处理:移除简单商品的加购区域,保留可变商品的变体区域
add_action( 'woocommerce_single_product_summary', 'custom_remove_add_to_cart_by_product_type', 1 );
function custom_remove_add_to_cart_by_product_type() {
    global $product;
    // 仅对简单商品移除整个加购模板
    if ( $product->is_type( 'simple' ) ) {
        remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
    }
}

// 3. 移除可变商品详情页的Add to Cart按钮,保留变体下拉、价格显示
remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );

效果说明

  • 全站所有商品列表页、详情页均不显示Add to Cart按钮
  • 简单商品详情页正常显示价格、商品描述等内容
  • 可变商品详情页正常显示变体下拉选择框、选中变体后的实时价格,不会被连带隐藏
  • 完全不影响你用WPForms实现的加购、结账逻辑

内容的提问来源于stack exchange,提问作者Ray Essop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 05:45:03