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

WooCommerce如何自动启用商品单独售卖(sold individually)设置?

WooCommerce自动勾选“单独售卖”选项的解决方案

你需要在添加新的简单可下载/虚拟商品时,自动勾选库存设置中的“单独售卖”(sold individually)选项,此前尝试的代码因钩子名称错误无法生效,以下是正确的实现代码:

正确代码实现

单独实现自动勾选“单独售卖”

add_filter( 'woocommerce_product_inventory_settings', 'autocheck_sold_individually' );

function autocheck_sold_individually( $settings ) {
    foreach ( $settings as &$setting ) {
        if ( $setting['id'] === '_sold_individually' ) {
            $setting['default'] = 'yes';
            break;
        }
    }
    return $settings;
}

合并原有功能(自动勾选虚拟/可下载+单独售卖)

如果你想把之前的自动勾选虚拟、可下载商品的功能和这个功能合并,使用以下代码即可:

// 自动勾选虚拟和可下载选项
add_filter( 'product_type_options', 'autocheck_virtual_downloadable' );
function autocheck_virtual_downloadable( $options ) {
    $options['virtual']['default'] = 'yes';
    $options['downloadable']['default'] = 'yes';
    return $options;
}

// 自动勾选单独售卖选项
add_filter( 'woocommerce_product_inventory_settings', 'autocheck_sold_individually' );
function autocheck_sold_individually( $settings ) {
    foreach ( $settings as &$setting ) {
        if ( $setting['id'] === '_sold_individually' ) {
            $setting['default'] = 'yes';
            break;
        }
    }
    return $settings;
}

代码说明

你之前使用的inventory_options并非WooCommerce官方提供的钩子,正确的钩子是woocommerce_product_inventory_settings——这个钩子专门用于修改商品库存相关的设置选项。代码通过遍历库存设置数组,找到_sold_individually对应的选项并将默认值设为yes,实现新增商品时自动勾选该选项。

使用时,将代码添加到主题的functions.php文件中,或者通过自定义代码插件(如Code Snippets)添加即可生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 08:52:38