WooCommerce批发定价?
学完这篇,你能在自己的 WooCommerce 店里搭出一套"零售客户看零售价、批发客户登录后自动看批发价"的双轨价格体系,并且清楚该装哪个插件、在哪个菜单里改。
第一步:先确定用哪种批发定价模式
WooCommerce 本身不带批发价功能,选插件之前先想清楚你要哪一种:
- 角色固定价——批发客户看所有商品都便宜一档,或统一 8 折;
- 阶梯价(数量折扣)——买 10 件 9 折、50 件 8 折;
- 混合模式——批发角色 + 阶梯价叠加。
九成商家用"角色固定价 + 阶梯价"就够了,本文按这个组合讲。
第二步:安装批发插件并建好客户角色
后台左侧菜单 → 插件 → 安装插件 → 右上角搜索框输入 Wholesale Suite → 在搜索结果卡片上点 立即安装 → 按钮变成 启用 后点它。
启用后左侧出现 Wholesale 菜单。点 Wholesale → Settings → General,勾选 Enable wholesale prices,拉到底点 Save changes(本文操作以 Wholesale Suite 3.x 为例,字段名在新版本里可能微调)。
接着建角色:Wholesale → Settings → Wholesale Roles → Add New Role,Role Name 填 wholesale_customer,Role Label 填 批发客户。
注意:角色的 slug(
wholesale_customer)一旦有人注册成批发客户就别再改,改名会让老用户瞬间掉回零售价。
不想花钱的话,用免费的 User Role Editor 建角色,再把下面这段放进子主题的 functions.php:
add_action('init', function () {
if (!get_role('wholesale_customer')) {
add_role('wholesale_customer', '批发客户', ['read' => true]);
}
});
add_filter('woocommerce_product_get_price', function ($price, $product) {
if (current_user_can('wholesale_customer')) {
$wp = get_post_meta($product->get_id(), '_wholesale_price', true);
if ($wp !== '') return (float) $wp;
}
return $price;
}, 10, 2);
这段只解决简单商品的价格显示,结账金额、变量商品、优惠券都要另外处理,所以真做生意还是建议用插件。
第三步:给单个商品填批发价
商品 → 全部商品 → 点商品名进入编辑页 → 下方 商品数据 面板 → 常规 标签 → 找到 Wholesale Price 字段,只填数字,不要带 ¥ 或 $。
变量商品要多一步:商品数据 → 变体,逐个展开每个变体,在变体面板里单独填批发价——不填的变体在批发客户眼里仍是零售价。
第四步:配置阶梯价
Wholesale Suite 的阶梯价在付费的 Wholesale Prices Premium 里,入口是 Wholesale → Settings → Pricing → Quantity Based Pricing,开启后按"数量区间 → 单价"逐行添加。
想用免费方案,可以装 Tiered Pricing Table for WooCommerce,启用后在商品编辑页多出 Tiered Pricing 区块,同样按区间填数量与价格。
第五步:让零售访客看不到批发价
回到 Wholesale → Settings → General,这几个开关要打开:
Hide wholesale prices from non-wholesale users——未登录访客看不到批发价;Hide "Add to Cart" button for non-wholesale users——避免零售客户误下单;Redirect to login page——把访客引到登录/注册页。
也可以单商品覆盖:商品编辑页里的 Wholesale 选项卡 → 勾选对非批发用户隐藏价格。
注意:如果你装了 WP Rocket、LiteSpeed Cache 或 Cloudflare APO 这类页面缓存,登录用户的批发价可能被缓存下来发给所有人。务必在缓存插件里排除"我的账户、购物车、结账"页面,最稳妥是登录状态下禁用缓存。
第六步:用三种身份各测一遍
开一个无痕窗口(未登录)看零售价;用批发账号登录看批发价;再把商品加入购物车走到结账页,确认购物车小计、订单确认邮件里的金额都是批发价。
注意:免运费门槛、优惠券、税费规则不会自动按角色区分,需要去 WooCommerce → 设置 → 配送 / 营销 里单独配。
小结
- WooCommerce 原生没有批发价,必须靠插件或自定义代码实现;
- 角色 slug 建好就别改,改了老客户会掉价;
- 批发价填在商品数据面板的常规标签,变量商品要逐个变体填;
- 页面缓存是最大的坑,登录态价格容易被缓存成公共价格;
- 测试要覆盖"未登录 / 批发账号 / 结账页"三种状态才算完。
原文链接:https://www.gj0.com/thread-1170.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。